Skip to content

fix - rework workflows #1

fix - rework workflows

fix - rework workflows #1

Workflow file for this run

name: Develop Branch CI - Build release candidate
on:
push:
branches:
- develop
jobs:
check-version:
runs-on: ubuntu-latest
outputs:
release-version: ${{ steps.version.outputs.pe-version }}
tag-already-exists: ${{ steps.checkTag.outputs.exists }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get version
id: version
run: echo "pe-version=$(cat package.json | jq -r '.version')-rc" >> $GITHUB_OUTPUT
- name: Print version
run: echo ${{ steps.version.outputs.pe-version }}
- uses: mukunku/[email protected]
id: checkTag
with:
tag: ${{ steps.version.outputs.pe-version }}
- if: ${{ steps.checkTag.outputs.exists == 'true' }}
name: "Skip release"
run: echo "Nothing to tag/release, the release ${{ steps.version.outputs.pe-version }} already exists"
create-release:
needs: check-version
runs-on: ubuntu-latest
if: ${{ needs.check-version.outputs.tag-already-exists == 'false' }}
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.ref }}
fetch-depth: 0
- name: Get previous tag
id: previousTag
run: echo "previousTag=$(git --no-pager tag --sort=creatordate --merged ${{ github.ref_name }} | grep '^[0-9]\+\.[0-9]\+\.[0-9]\+\-rc$' | tail -1)" >> $GITHUB_OUTPUT
- uses: softprops/action-gh-release@v1
with:
tag_name: ${{ needs.check-version.outputs.release-version }}
target_commitish: ${{ github.head_ref || github.ref }}
name: ${{ needs.check-version.outputs.release-version }}
body: ${{steps.changelog.outputs.changes}}
prerelease: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
build-release:
needs: create-release
runs-on: ubuntu-latest
steps:
- name: Extract branch name
shell: bash
run: echo "branch=$(echo ${GITHUB_REF#refs/heads/})" >>$GITHUB_OUTPUT
id: extract_branch
- uses: actions/checkout@v4
with:
ref: ${{ steps.extract_branch.outputs.branch }}
- name: Use Node.js 18
uses: actions/setup-node@v4
with:
node-version: 18
- run: yarn
- run: yarn build
- name: Upload build
uses: actions/upload-artifact@v4
with:
name: build
path: build
docker:
needs:
- check-version
- build-release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Download build
id: download
uses: actions/download-artifact@v4
with:
name: build
path: build
- name: Publish to Registry
uses: elgohr/Publish-Docker-Github-Action@v5
with:
name: inseefr/platine-my-surveys
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
tags: "latest, ${{ needs.check-version.outputs.release-version }}"