aqua/.github/workflows/snapshot.yml

94 lines
2.3 KiB
YAML
Raw Permalink Normal View History

2022-12-28 08:30:42 +00:00
name: Publish snapshots
on:
workflow_call:
inputs:
ref:
description: "git ref to checkout to"
type: string
default: "main"
outputs:
aqua-snapshots:
description: "aqua snapshots"
value: ${{ jobs.publish.outputs.snapshots }}
env:
FORCE_COLOR: true
CI: true
jobs:
publish:
name: "Publish snapshots"
runs-on: builder
timeout-minutes: 60
permissions:
contents: read
id-token: write
outputs:
snapshots: "${{ steps.snapshot.outputs.snapshots }}"
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
repository: fluencelabs/aqua
2022-12-19 04:27:42 +00:00
ref: ${{ inputs.ref }}
2022-12-28 08:30:42 +00:00
- name: Generate snapshot version
id: version
2022-12-28 08:30:42 +00:00
uses: fluencelabs/github-actions/generate-snapshot-id@main
- name: Cache Scala
uses: coursier/cache-action@v6
- name: Setup Scala
uses: coursier/setup-action@v1
with:
apps: sbt
- name: scala-js build
env:
SNAPSHOT: ${{ steps.version.outputs.id }}
run: sbt ";language-server-apiJS/fastBundleJS;aqua-apiJS/fastBundleJS"
- name: Import secrets
uses: hashicorp/vault-action@v3.0.0
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
- name: Setup pnpm
uses: pnpm/action-setup@v4.0.0
2022-12-28 08:30:42 +00:00
with:
version: 8
2022-12-28 08:30:42 +00:00
- name: Setup node with self-hosted npm registry
uses: actions/setup-node@v4
2022-12-28 08:30:42 +00:00
with:
2023-08-24 10:20:34 +00:00
node-version: "18"
2022-12-28 08:30:42 +00:00
registry-url: "https://npm.fluence.dev"
cache: "pnpm"
2022-12-28 08:30:42 +00:00
- run: pnpm --filter='!integration-tests' -r i
2022-12-28 08:30:42 +00:00
- name: Set package version
run: node ci.cjs bump-version ${{ steps.version.outputs.id }}
- run: pnpm --filter='!integration-tests' -r build
- name: Publish snapshot
id: snapshot
uses: fluencelabs/github-actions/pnpm-publish-snapshot@main
with:
id: ${{ steps.version.outputs.id }}
set-version: false