name: "Release" on: workflow_dispatch: inputs: dry-run-release: description: 'enable dry-run' required: false type: boolean default: true push: branches: - master - develop env: BASE_URL: ${{ secrets.PIPELINE_ENV_URL }} ADMIN_EMAIL: ${{ secrets.PIPELINE_ADMIN_USERNAME }} ADMIN_PASSWORD: ${{ secrets.PIPELINE_ADMIN_PASSWORD }} PLAYWRIGHT_E2E_HOST: ${{ secrets.PLAYWRIGHT_E2E_HOST }} jobs: publish-docker-registry: name: "Publish to Quay" runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 0 - name: Setup node uses: actions/setup-node@v3 with: node-version-file: '.nvmrc' cache: 'npm' - uses: ./.github/actions/setup - name: Get Tag uses: ./.github/actions/get-image-tag with: branch_name: ${{ env.BRANCH_NAME }} - name: publish uses: ./.github/actions/publish-image with: registry: quay.io tag_version: ${{ env.TAG_VERSION }} username: ${{ secrets.QUAY_USERNAME }} password: ${{ secrets.QUAY_PASSWORD }} dry-run: ${{ inputs.dry-run-release }} publish-to-dockerhub: name: "Publish to Dockerhub" runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 0 - name: Setup node uses: actions/setup-node@v3 with: node-version-file: '.nvmrc' cache: 'npm' - uses: ./.github/actions/setup - name: Get Tag uses: ./.github/actions/get-image-tag with: branch_name: ${{ env.BRANCH_NAME }} - name: publish uses: ./.github/actions/publish-image with: registry: docker.io tag_version: ${{ env.TAG_VERSION }} username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} dry-run: ${{ inputs.dry-run-release }} publish-git-tag: name: "Publish Git Tag" runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 0 - name: Setup node uses: actions/setup-node@v3 with: node-version-file: '.nvmrc' cache: 'npm' - uses: ./.github/actions/setup - uses: Alfresco/alfresco-build-tools/.github/actions/configure-git-author@v1.35.0 with: username: ${{ vars.BOT_GITHUB_USERNAME }} email: ${{ vars.BOT_GITHUB_EMAIL }} global: true - name: publish uses: ./.github/actions/git-tag with: github_token: ${{ secrets.GITHUB_TOKEN }} branch_name: ${{ env.BRANCH_NAME }} dry-run: ${{ inputs.dry-run-release }} publish-libs: name: "Publish libs to NPM and GitHub registry" runs-on: ubuntu-latest permissions: packages: write steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 2 - name: Setup node uses: actions/setup-node@v3 with: node-version-file: '.nvmrc' cache: 'npm' - uses: ./.github/actions/setup - name: publish uses: ./.github/actions/publish-libs with: branch_name: ${{ env.BRANCH_NAME }} github_token: ${{ secrets.BOT_GITHUB_TOKEN }} npm_registry_token: ${{ secrets.NPM_REGISTRY_TOKEN }} npm_tag: ${{ env.TAG_NPM }} dry-run: ${{ inputs.dry-run-release }}