Skip to content

changement path env-config #95

changement path env-config

changement path env-config #95

Workflow file for this run

name: Release
on:
push:
branches:
- master
jobs:
test_lint:
name: Check lint
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install yarn
run: npm install --global yarn
- name: Install packages
run: yarn install
- name: Run ESLint
run: yarn lint
publish_latest_on_dockerhub:
name: Publish on dockerhub as latest
runs-on: ubuntu-latest
needs:
- test_lint
steps:
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v4
with:
push: true
tags: maximallain/cosia_front:latest
file: Dockerfile.prod
# Unabled because of IGN network... When l'usine logicielle is open on internet => let's go !
# trigger_deployment_pipeline:
# name: Trigger deployment pipeline
# runs-on: ubuntu-latest
# needs:
# - publish_latest_on_dockerhub
# steps:
# - name: Fetch gitlab webhook
# uses: joelwmale/webhook-action@master
# with:
# url: https://gitlab.gpf-tech.ign.fr/api/v4/projects/701/ref/master/trigger/pipeline?token=${{ secrets.DEV_TRIGGER_GITLAB_TOKEN }}
check_if_version_upgraded:
name: Check if version upgrade
runs-on: ubuntu-latest
needs: test_lint
outputs:
from_version: ${{ steps.step1.outputs.from_version }}
to_version: ${{ steps.step1.outputs.to_version }}
is_upgraded_version: ${{ steps.step1.outputs.is_upgraded_version }}
is_pre_release: ${{steps.step1.outputs.is_pre_release }}
steps:
- uses: garronej/ts-ci@v2.1.0
id: step1
with:
action_name: is_package_json_version_upgraded
branch: ${{ github.head_ref || github.ref }}
create_github_release:
name: Tag if version changed
runs-on: ubuntu-latest
# We create release only if the version in the package.json have been upgraded and this CI is running against the master branch.
# We allow branches with a PR open on master to publish pre-release (x.y.z-rc.u) but not actual releases.
if: |
needs.check_if_version_upgraded.outputs.is_upgraded_version == 'true' &&
(
github.event_name == 'push' ||
needs.check_if_version_upgraded.outputs.is_pre_release == 'true'
)
needs:
- check_if_version_upgraded
permissions:
contents: write
steps:
- 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
draft: false
prerelease: ${{ needs.check_if_version_upgraded.outputs.is_pre_release == 'true' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
publish_version_on_dockerhub:
name: Publish new tag on dockerhub
runs-on: ubuntu-latest
needs:
- check_if_version_upgraded
- create_github_release
steps:
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v4
with:
push: true
tags: maximallain/cosia_front:${{needs.check_if_version_upgraded.outputs.to_version}}
file: Dockerfile.prod