Skip to content

Merge pull request #108 from camptocamp/dependabot/npm_and_yarn/axios… #549

Merge pull request #108 from camptocamp/dependabot/npm_and_yarn/axios…

Merge pull request #108 from camptocamp/dependabot/npm_and_yarn/axios… #549

Workflow file for this run

name: CI
env:
NODE_VERSION: 18.16.1
on:
push:
branches:
- main
pull_request:
release:
types: [published]
# Needed for nx-set-shas within nx-cloud-main.yml, when run on the main branch
permissions:
actions: read
contents: read
packages: write
jobs:
lint-test-build:
name: Nx Cloud - Main Job
uses: nrwl/ci/.github/workflows/nx-cloud-main.yml@v0.13.1
with:
main-branch-name: main
number-of-agents: 3
init-commands: |
npx nx-cloud start-ci-run --stop-agents-after="build" --agent-count=3
parallel-commands: |
npx nx-cloud record -- npx nx format:check
parallel-commands-on-agents: |
npx nx affected --target=lint --parallel=3
npx nx affected --target=test --parallel=3 --ci --code-coverage
npx nx affected --target=build --parallel=3
push-docker:
needs: lint-test-build
name: Build and upload docker image and archive
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'npm'
- name: Install dependencies
run: npm i
- name: Run docker-build for datahub
run: npx nx docker-build mel-datahub
- name: Run docker-build for home
run: npx nx docker-build home
- uses: docker/login-action@v1
name: Login to GitHub Container Registry
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: 'Pushing the images onto ghcr.io'
if: github.ref == 'refs/heads/main' || github.event_name == 'release'
run: |
docker image ls --format '{{.Repository}}:{{.Tag}}' --filter=reference='ghcr.io/camptocamp/mel-dataplatform/*' | \
xargs -r -L1 docker push $1
cypress-run:
name: End-to-end tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'npm'
- name: Checkout
uses: actions/checkout@v4
with:
repository: geonetwork/geonetwork-ui
path: 'backend/geonetwork-ui'
- name: Build the gn-ui backend
run: sudo docker compose -f backend/geonetwork-ui/support-services/docker-compose.yml up -d init
- name: Install dependencies
run: npm i
- name: Run tests for datahub
run: npx nx e2e mel-datahub-e2e
- name: Run tests for home
run: npx nx e2e home-e2e
agents:
name: Nx Cloud - Agents
uses: nrwl/ci/.github/workflows/nx-cloud-agents.yml@v0.13.1
with:
number-of-agents: 3