Skip to content
Snippets Groups Projects
Commit 9f90079c authored by Griefed's avatar Griefed :joystick:
Browse files

Merge branch 'main' into 'renovate-griefed-gitlab-ci-cd-2.x'

# Conflicts:
#   .gitlab-ci.yml
parents f6096fea 016d69c0
No related branches found
No related tags found
1 merge request!30chore(deps): update griefed/gitlab-ci-cd docker tag to v2.0.1
......@@ -6,8 +6,13 @@ on:
- '*'
jobs:
release:
runs-on: ubuntu-latest
# OUTPUTS
outputs:
newtag: ${{ steps.tag.outputs.tag }}
uploadurl: ${{ steps.create_release.outputs.upload_url }}
steps:
# GET LATEST CODE
- name: Checkout latest code
......@@ -27,6 +32,7 @@ jobs:
uses: ardalanamini/auto-changelog@master
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: Create Release
id: create_release
uses: actions/create-release@latest
......@@ -42,26 +48,103 @@ jobs:
draft: false
prerelease: false
main:
needs: release
runs-on: ubuntu-latest
steps:
# GET LATEST CODE
- name: Checkout latest code
uses: actions/checkout@master
with:
ref: main
fetch-depth: 0
# BUILD PROJECT AND PUBLISH TO PACKAGES
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '8'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Publish to GitHub Packages
env:
GITHUB_ACTOR: ${{ secrets.GITHUB_ACTOR }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
NEW_VERSION=$(echo "${{ needs.release.outputs.newtag }}")
echo "New version: ${NEW_VERSION}"
echo "Github username: ${GITHUB_ACTOR}"
./gradlew about
./gradlew -Pversion=${NEW_VERSION} build --info -x test
# UPLOAD ASSETS TO RELEASE
- name: Upload Release Asset Main Jar
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/ExampleAddon-${{ needs.release.outputs.newtag }}.jar
asset_name: ExampleAddon-${{ needs.release.outputs.newtag }}.jar
asset_content_type: application/jar
- name: Upload Release Asset Sources Jar
id: upload-release-asset-sources
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/ExampleAddon-${{ needs.release.outputs.newtag }}-sources.jar
asset_name: ExampleAddon-${{ needs.release.outputs.newtag }}-sources.jar
asset_content_type: application/jar
- name: Upload Release Asset Javadoc Jar
id: upload-release-asset-javadoc
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/ExampleAddon-${{ needs.release.outputs.newtag }}-javadoc.jar
asset_name: ExampleAddon-${{ needs.release.outputs.newtag }}-javadoc.jar
asset_content_type: application/jar
alternative:
needs: release
runs-on: ubuntu-latest
steps:
# GET LATEST CODE
- name: Checkout latest code
uses: actions/checkout@master
with:
ref: alternativeExtensionDeclaration
fetch-depth: 0
# BUILD PROJECT AND PUBLISH TO PACKAGES
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '8'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Publish to GitHub Packages
env:
GITHUB_ACTOR: ${{ secrets.GITHUB_ACTOR }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
NEW_VERSION=$(echo "${{steps.tag.outputs.tag}}")
NEW_VERSION=$(echo "${{ needs.release.outputs.newtag }}")
echo "New version: ${NEW_VERSION}"
echo "Github username: ${GITHUB_ACTOR}"
./gradlew about
./gradlew -Pversion=${NEW_VERSION} publish --info -x test
- name: List files
run: ls -ahl build/libs
./gradlew -Pversion=${NEW_VERSION} build --info -x test
# UPLOAD ASSETS TO RELEASE
- name: Upload Release Asset Main Jar
......@@ -70,27 +153,95 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./build/libs/serverpackcreatorexampleaddon-${{steps.tag.outputs.tag}}.jar
asset_name: serverpackcreatorexampleaddon-${{steps.tag.outputs.tag}}.jar
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/AlternativeExtensionDeclaration-${{ needs.release.outputs.newtag }}.jar
asset_name: AlternativeExtensionDeclaration-${{ needs.release.outputs.newtag }}.jar
asset_content_type: application/jar
- name: Upload Release Asset Sources Jar
id: upload-release-asset-sources
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./build/libs/serverpackcreatorexampleaddon-${{steps.tag.outputs.tag}}-sources.jar
asset_name: serverpackcreatorexampleaddon-${{steps.tag.outputs.tag}}-sources.jar
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/AlternativeExtensionDeclaration-${{ needs.release.outputs.newtag }}-sources.jar
asset_name: AlternativeExtensionDeclaration-${{ needs.release.outputs.newtag }}-sources.jar
asset_content_type: application/jar
- name: Upload Release Asset Javadoc Jar
id: upload-release-asset-javadoc
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/AlternativeExtensionDeclaration-${{ needs.release.outputs.newtag }}-javadoc.jar
asset_name: AlternativeExtensionDeclaration-${{ needs.release.outputs.newtag }}-javadoc.jar
asset_content_type: application/jar
tetris:
needs: release
runs-on: ubuntu-latest
steps:
# GET LATEST CODE
- name: Checkout latest code
uses: actions/checkout@master
with:
ref: tetris
fetch-depth: 0
# BUILD PROJECT AND PUBLISH TO PACKAGES
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '8'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Publish to GitHub Packages
env:
GITHUB_ACTOR: ${{ secrets.GITHUB_ACTOR }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
NEW_VERSION=$(echo "${{ needs.release.outputs.newtag }}")
echo "New version: ${NEW_VERSION}"
echo "Github username: ${GITHUB_ACTOR}"
./gradlew about
./gradlew -Pversion=${NEW_VERSION} build --info -x test
# UPLOAD ASSETS TO RELEASE
- name: Upload Release Asset Main Jar
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/Minigame-${{ needs.release.outputs.newtag }}.jar
asset_name: Minigame-${{ needs.release.outputs.newtag }}.jar
asset_content_type: application/jar
- name: Upload Release Asset Sources Jar
id: upload-release-asset-sources
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/Minigame-${{ needs.release.outputs.newtag }}-sources.jar
asset_name: Minigame-${{ needs.release.outputs.newtag }}-sources.jar
asset_content_type: application/jar
- name: Upload Release Asset Javadoc Jar
id: upload-release-asset-javadoc
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./build/libs/serverpackcreatorexampleaddon-${{steps.tag.outputs.tag}}-javadoc.jar
asset_name: serverpackcreatorexampleaddon-${{steps.tag.outputs.tag}}-javadoc.jar
upload_url: ${{ needs.release.outputs.uploadurl }}
asset_path: ./build/libs/Minigame-${{ needs.release.outputs.newtag }}-javadoc.jar
asset_name: Minigame-${{ needs.release.outputs.newtag }}-javadoc.jar
asset_content_type: application/jar
\ No newline at end of file
......@@ -6,10 +6,80 @@ on:
workflow_dispatch:
jobs:
test:
main:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: main
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '8'
- name: Where is Java
run: which java
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew about build --no-daemon --info
- name: List files in libs
run: ls -ahl build/libs
- uses: actions/upload-artifact@v2
with:
name: build-artifacts-gradle
path: |
build/libs/
!build/libs/libraries/
frontend/dist/spa
if-no-files-found: warn # 'warn' or 'ignore' are also available, defaults to `warn`
- uses: actions/upload-artifact@v2
if: failure()
with:
name: report
path: build/reports/tests/test/
if-no-files-found: warn # 'warn' or 'ignore' are also available, defaults to `warn`
alternative:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: alternativeExtensionDeclaration
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '8'
- name: Where is Java
run: which java
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew about build --no-daemon --info
- name: List files in libs
run: ls -ahl build/libs
- uses: actions/upload-artifact@v2
with:
name: build-artifacts-gradle
path: |
build/libs/
!build/libs/libraries/
frontend/dist/spa
if-no-files-found: warn # 'warn' or 'ignore' are also available, defaults to `warn`
- uses: actions/upload-artifact@v2
if: failure()
with:
name: report
path: build/reports/tests/test/
if-no-files-found: warn # 'warn' or 'ignore' are also available, defaults to `warn`
tetris:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
ref: tetris
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
......
......@@ -26,28 +26,6 @@ Gradle Test:
script:
- echo "**** Building ServerPackCreator ****"
- ./gradlew build --info
- echo "**** Listing build directory ****"
- LC_COLLATE=C ls -ahl --group-directories-first --color=auto
build
- LC_COLLATE=C ls -ahl --group-directories-first --color=auto
build/libs
- echo "**** Renaming files to please the eye ****"
- mv
build/libs/serverpackcreatorexampleaddon.jar
build/libs/ServerPackCreatorExampleAddon.jar
- mv
build/libs/serverpackcreatorexampleaddon-javadoc.jar
build/libs/ServerPackCreatorExampleAddon-javadoc.jar
- mv
build/libs/serverpackcreatorexampleaddon-sources.jar
build/libs/ServerPackCreatorExampleAddon-sources.jar
artifacts:
paths:
- build/libs/ServerPackCreatorExampleAddon.jar
- build/libs/ServerPackCreatorExampleAddon-javadoc.jar
- build/libs/ServerPackCreatorExampleAddon-sources.jar
- build/reports/tests/test
expire_in: 1 week
except:
refs:
- tags
......@@ -70,7 +48,6 @@ Release:
script:
- npx semantic-release
only:
- master
- main
except:
refs:
......@@ -78,86 +55,6 @@ Release:
variables:
- $CI_COMMIT_TITLE =~ /^RELEASE:.+$/
Build Release:
image: griefed/baseimage-ubuntu-jdk-8:2.0.3
stage: Build Release
services:
- name: griefed/gitlab-ci-cd:2.0.1
alias: docker
variables:
project_name: $CI_PROJECT_NAME
SEMANTIC_RELEASE_PACKAGE: $CI_PROJECT_NAME
before_script:
- echo "**** Running in $CI_JOB_ID ****"
- echo "**** Java location ****"
- which java
- echo "**** Java version ****"
- java -version
- echo "**** Allowing execution of gradlew ****"
- chmod +x gradlew
- echo "**** Ensure clean environment ****"
- ./gradlew about
script:
- echo "**** Building ServerPackCreator ****"
- ./gradlew build --info -x test
- echo "**** Listing build directory ****"
- LC_COLLATE=C ls -ahl --group-directories-first --color=auto
build
- LC_COLLATE=C ls -ahl --group-directories-first --color=auto
build/libs
- echo "**** Renaming files to please the eye ****"
- mv
build/libs/serverpackcreatorexampleaddon.jar
build/libs/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.jar
- mv
build/libs/serverpackcreatorexampleaddon-javadoc.jar
build/libs/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-javadoc.jar
- mv
build/libs/serverpackcreatorexampleaddon-sources.jar
build/libs/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-sources.jar
- LC_COLLATE=C ls -ahl --group-directories-first --color=auto
build/libs
- echo "**** Uploading packages ****"
- 'curl
--header "JOB-TOKEN: ${CI_JOB_TOKEN}"
--upload-file build/libs/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.jar
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.jar"'
- 'curl
--header "JOB-TOKEN: ${CI_JOB_TOKEN}"
--upload-file build/libs/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-javadoc.jar
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-javadoc.jar"'
- 'curl
--header "JOB-TOKEN: ${CI_JOB_TOKEN}"
--upload-file build/libs/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-sources.jar
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-sources.jar"'
- echo "**** Create asset links ****"
- 'curl
--request POST
--header "PRIVATE-TOKEN: ${GITLAB_TOKEN}"
--data tag_name="${CI_COMMIT_TAG}"
--data name="${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.jar"
--data url="${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.jar"
--data link_type="package"
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/releases/${CI_COMMIT_TAG}/assets/links"'
- 'curl
--request POST
--header "PRIVATE-TOKEN: ${GITLAB_TOKEN}"
--data tag_name="${CI_COMMIT_TAG}"
--data name="${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-javadoc.jar"
--data url="${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-javadoc.jar"
--data link_type="package"
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/releases/${CI_COMMIT_TAG}/assets/links"'
- 'curl
--request POST
--header "PRIVATE-TOKEN: ${GITLAB_TOKEN}"
--data tag_name="${CI_COMMIT_TAG}"
--data name="${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-sources.jar"
--data url="${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/${CI_COMMIT_TAG}/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}-sources.jar"
--data link_type="package"
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/releases/${CI_COMMIT_TAG}/assets/links"'
only:
- tags
pages:
image: griefed/baseimage-ubuntu-jdk-8:2.0.3
stage: Documentation
......@@ -182,4 +79,4 @@ pages:
artifacts:
paths:
- public
expire_in: 1 week
expire_in: 1 week
\ No newline at end of file
//rootProject.name = 'serverpackcreatorexampleaddon'
rootProject.name = 'ExampleAddon'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment