From 5fb96fbe738fb065f2ad9bf8ce37dd05102dbe6a Mon Sep 17 00:00:00 2001 From: Cedric Rische Date: Sun, 29 Dec 2024 17:18:45 +0100 Subject: [PATCH] Adds ci build --- .github/workflows/ci.yml | 75 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..4de60c7 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,75 @@ +name: ci +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + + build: + runs-on: ubuntu-latest + if: github.event.head_commit.author.name != 'actions' + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v2.1.3 + with: + node-version: '16' + - uses: bahmutov/npm-install@v1 + - run: yarn build + - run: npx keycloakify + - uses: actions/upload-artifact@v2 + with: + name: standalone_keycloak_theme + path: build_keycloak/target/*keycloak-theme*.jar + - uses: actions/upload-artifact@v2 + with: + name: build + path: build + + check_if_version_upgraded: + name: Check if version upgrade + runs-on: ubuntu-latest + needs: build + outputs: + from_version: \${{ steps.step1.outputs.from_version }} + to_version: \${{ steps.step1.outputs.to_version }} + is_upgraded_version: \${{ steps.step1.outputs.is_upgraded_version }} + steps: + - uses: garronej/ts-ci@v2.1.0 + id: step1 + with: + action_name: is_package_json_version_upgraded + + create_github_release: + runs-on: ubuntu-latest + needs: + - check_if_version_upgraded + # We create a release only if the version have been upgraded and we are on a default branch + # PR on the default branch can release beta but not real release + if: | + needs.check_if_version_upgraded.outputs.is_upgraded_version == 'true' && + ( + github.event_name == 'push' || + needs.check_if_version_upgraded.outputs.is_release_beta == 'true' + ) + steps: + - run: mkdir jars + - uses: actions/download-artifact@v2 + with: + name: standalone_keycloak_theme + - run: mv *keycloak-theme*.jar jars/standalone-keycloak-theme.jar + - uses: softprops/action-gh-release@v1 + with: + name: Release v\${{ needs.check_if_version_upgraded.outputs.to_version }} + tag_name: v\${{ needs.check_if_version_upgraded.outputs.to_version }} + target_commitish: \${{ github.head_ref || github.ref }} + generate_release_notes: true + files: | + jars/standalone-keycloak-theme.jar + draft: false + prerelease: \${{ needs.check_if_version_upgraded.outputs.is_release_beta == 'true' }} + env: + GITHUB_TOKEN: \${{ secrets.GITHUB_TOKEN }}