mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2026-09-02 17:53:30 +00:00
65 lines
2.3 KiB
YAML
65 lines
2.3 KiB
YAML
name: 'Setup'
|
|
description: 'Initialize cache, env var load'
|
|
inputs:
|
|
cache-suffix:
|
|
description: 'Suffix to make Nx cache key unique per job (e.g. matrix project name)'
|
|
required: false
|
|
default: 'default'
|
|
full-setup:
|
|
description: 'Run git-latest-tag, npm-tag, and before-install (requires fetch-depth: 0). Set to false for matrix jobs that only need node/cache.'
|
|
required: false
|
|
type: boolean
|
|
default: 'true'
|
|
act:
|
|
description: 'enable act debug'
|
|
required: false
|
|
type: boolean
|
|
default: 'false'
|
|
outputs:
|
|
npm-tag:
|
|
description: 'NPM tag'
|
|
value: ${{ steps.set-npm-tag.outputs.npm-tag }}
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Set consistent machine ID for Nx cache
|
|
shell: bash
|
|
run: echo "nx-github-actions" | sudo tee /etc/machine-id > /dev/null
|
|
- name: Setup pnpm
|
|
uses: pnpm/action-setup@0977fd99725f1db4007ccb2928dbb4e90d06cc86 # v6.0.10
|
|
- name: Setup Node
|
|
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
|
with:
|
|
node-version-file: '.nvmrc'
|
|
cache: 'pnpm'
|
|
- name: get latest tag sha
|
|
if: ${{ inputs.full-setup == 'true' }}
|
|
id: tag-sha
|
|
uses: Alfresco/alfresco-build-tools/.github/actions/git-latest-tag@98bcfbe06aafffdc0e9a790f352602316f82303b # v18.23.0
|
|
- name: load "NPM TAG"
|
|
if: ${{ inputs.full-setup == 'true' }}
|
|
id: set-npm-tag
|
|
uses: ./.github/actions/set-npm-tag
|
|
- name: Install dependencies
|
|
shell: bash
|
|
run: pnpm install --frozen-lockfile
|
|
- name: Security audit
|
|
shell: bash
|
|
run: pnpm audit --audit-level=critical
|
|
- name: Restore nx cache
|
|
uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
|
|
with:
|
|
path: |
|
|
nxcache
|
|
.nx
|
|
dist
|
|
key: ${{ runner.os }}-nxcache-${{ inputs.cache-suffix }}-${{ hashFiles('nx.json') }}-${{ github.sha }}
|
|
restore-keys: |
|
|
${{ runner.os }}-nxcache-${{ inputs.cache-suffix }}-${{ hashFiles('nx.json') }}-
|
|
${{ runner.os }}-nxcache-${{ inputs.cache-suffix }}-
|
|
- name: before install script
|
|
if: ${{ inputs.full-setup == 'true' }}
|
|
uses: ./.github/actions/before-install
|
|
with:
|
|
act: ${{ inputs.act }}
|