Skip to content

Generate and upload archives #3

Generate and upload archives

Generate and upload archives #3

Workflow file for this run

name: Build fluence-cli snapshot
on:
workflow_call:
inputs:
ref:
description: "Git ref to checkout to"
type: string
default: "main"
marine-version:
description: "marine version"
type: string
default: "null"
mrepl-version:
description: "mrepl version"
type: string
default: "null"
marine-rs-sdk-version:
description: "marine-rs-sdk version"
type: string
default: "null"
marine-rs-sdk-test-version:
description: "marine-rs-sdk-test version"
type: string
default: "null"
js-client-snapshots:
description: "js-client snapshots"
type: string
default: "null"
aqua-snapshots:
description: "aqua snapshots"
type: string
default: "null"
outputs:
version:
description: "@fluencelabs/cli version"
value: ${{ jobs.snapshot.outputs.version }}
env:
CI: true
FORCE_COLOR: true
jobs:
snapshot:
name: "Build snapshot"
runs-on: builder
outputs:
version: ${{ steps.snapshot.outputs.version }}
permissions:
contents: read
id-token: write
steps:
- name: Checkout fluence-cli
uses: actions/checkout@v3
with:
repository: fluencelabs/cli
ref: ${{ inputs.ref }}
- name: Import secrets
uses: hashicorp/vault-action@v2.7.3
id: secrets
with:
url: https://vault.fluence.dev
path: jwt/github
role: ci
method: jwt
jwtGithubAudience: "https://github.com/fluencelabs"
jwtTtl: 300
exportToken: false
secrets: |
kv/npm-registry/basicauth/ci token | NODE_AUTH_TOKEN;
kv/cargo-registry/users/ci token | CARGO_REGISTRIES_FLUENCE_TOKEN
- name: Setup Rust toolchain
uses: actions-rust-lang/setup-rust-toolchain@v1
- name: Setup pnpm
uses: pnpm/action-setup@v2.4.0
with:
version: 8
- name: Setup node with self-hosted npm registry
uses: actions/setup-node@v3
with:
node-version: "18"
registry-url: "https://npm.fluence.dev"
cache: "yarn"
- run: yarn install
- name: Set js-client.api version
if: inputs.js-client-snapshots != 'null'
uses: fluencelabs/github-actions/npm-set-dependency@main
with:
package: "@fluencelabs/js-client.api"
version: ${{ fromJson(inputs.js-client-snapshots)['js-client.api'] }}
package-manager: yarn
- name: Set js-client.node version
if: inputs.js-client-snapshots != 'null'
uses: fluencelabs/github-actions/npm-set-dependency@main
with:
package: "@fluencelabs/js-client.node"
version: ${{ fromJson(inputs.js-client-snapshots)['js-client.node'] }}
package-manager: yarn
- name: Set aqua-api version
if: inputs.aqua-snapshots != 'null'
uses: fluencelabs/github-actions/npm-set-dependency@main
with:
package: "@fluencelabs/aqua-api"
version: "${{ fromJson(inputs.aqua-snapshots)['aqua-api'] }}"
package-manager: yarn
- name: Update versions.json
uses: ./.github/actions/replace-version
with:
versions: |
{
"npm": {
"@fluencelabs/js-client.api": "${{ inputs.js-client-snapshots == 'null' && 'null' || fromJson(inputs.js-client-snapshots)['js-client.api'] }}",
"@fluencelabs/js-client.node": "${{ inputs.js-client-snapshots == 'null' && 'null' || fromJson(inputs.js-client-snapshots)['js-client.node'] }}"
},
"cargo": {
"marine": "${{ inputs.marine-version }}",
"mrepl": "${{ inputs.mrepl-version }}",
"marine-rs-sdk": "${{ inputs.marine-rs-sdk-version }}",
"marine-rs-sdk-test": "${{ inputs.marine-rs-sdk-test-version }}"
}
}
- name: Configure yarn to publish to private registry
run: |
yarn config set npmRegistryServer "https://npm.fluence.dev"
yarn config set npmAlwaysAuth true
yarn config set npmAuthToken $NODE_AUTH_TOKEN
- name: Generate snapshot version
id: version
uses: fluencelabs/github-actions/generate-snapshot-id@main
- name: Publish snapshot
id: snapshot
uses: fluencelabs/github-actions/npm-publish-snapshot@main
with:
id: ${{ steps.version.outputs.id }}
package-manager: yarn npm
flags: --tag snapshot
- name: Generate archives
run: yarn oclif-pack
- name: ls -alh dist/
- name: Upload archives to artifacts
uses: actions/upload-artifact@v3
with:

Check failure on line 160 in .github/workflows/snapshot.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/snapshot.yml

Invalid workflow file

You have an error in your yaml syntax on line 160
name: linux-x64
path: dist/linux-x64.zip