revisium 2.5.0-alpha.5 → 2.5.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,18 +2,36 @@ name: Build
2
2
 
3
3
  on:
4
4
  workflow_dispatch:
5
+ inputs:
6
+ version:
7
+ description: 'revisium npm version to install (e.g. 2.5.0-alpha.5)'
8
+ required: true
9
+ type: string
10
+ workflow_call:
11
+ inputs:
12
+ version:
13
+ description: 'revisium npm version to install (without leading v)'
14
+ required: true
15
+ type: string
16
+ secrets:
17
+ DOCKERHUB_USERNAME:
18
+ required: true
19
+ DOCKERHUB_TOKEN:
20
+ required: true
5
21
 
6
22
  permissions:
7
23
  contents: read
8
24
 
9
25
  jobs:
10
26
  build-and-push-image:
11
- uses: revisium/revisium-actions/.github/workflows/docker-build.yml@184b609dcbc1e23f14021141f29226d4e6a0f1ac # v0.3.6
27
+ uses: revisium/revisium-actions/.github/workflows/docker-build.yml@4faefa5d526b0b3af826d650dae4f77d89ccd087 # v0.3.7
12
28
  with:
13
29
  image_name: ${{ github.event.repository.name }}
14
30
  context: .
15
31
  dockerfile: Dockerfile
16
32
  emit_latest_tag: ${{ startsWith(github.ref, 'refs/tags/v') }}
33
+ build_args: |
34
+ REVISIUM_VERSION=${{ inputs.version }}
17
35
  secrets:
18
36
  DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
19
37
  DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
@@ -6,6 +6,21 @@ on:
6
6
  - 'v*'
7
7
 
8
8
  jobs:
9
+ resolve-version:
10
+ runs-on: ubuntu-latest
11
+ outputs:
12
+ version: ${{ steps.extract.outputs.version }}
13
+ steps:
14
+ - name: Validate tag + strip leading v
15
+ id: extract
16
+ run: |
17
+ set -euo pipefail
18
+ if [[ ! "$GITHUB_REF_NAME" =~ ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z.-]+)?(\+[0-9A-Za-z.-]+)?$ ]]; then
19
+ echo "::error::Tag '$GITHUB_REF_NAME' is not a valid semver tag (expected vMAJOR.MINOR.PATCH[-prerelease][+build])" >&2
20
+ exit 1
21
+ fi
22
+ echo "version=${GITHUB_REF_NAME#v}" >> "$GITHUB_OUTPUT"
23
+
9
24
  publish:
10
25
  permissions:
11
26
  contents: write
@@ -22,3 +37,14 @@ jobs:
22
37
  create_github_release: true
23
38
  secrets:
24
39
  NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
40
+
41
+ build-image:
42
+ needs: [publish, resolve-version]
43
+ permissions:
44
+ contents: read
45
+ uses: ./.github/workflows/build.yml
46
+ with:
47
+ version: ${{ needs.resolve-version.outputs.version }}
48
+ secrets:
49
+ DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
50
+ DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
package/Dockerfile CHANGED
@@ -3,9 +3,11 @@ FROM node:22-alpine
3
3
  RUN apk add --no-cache bash ca-certificates curl tini \
4
4
  && update-ca-certificates
5
5
 
6
- RUN npm i -g revisium \
6
+ ARG REVISIUM_VERSION
7
+ RUN : "${REVISIUM_VERSION:?REVISIUM_VERSION build-arg is required (pass --build-arg REVISIUM_VERSION=<x.y.z>)}" \
8
+ && npm i -g "revisium@${REVISIUM_VERSION}" \
7
9
  && revisium --version \
8
- && echo "Installed revisium successfully"
10
+ && echo "Installed revisium@${REVISIUM_VERSION}"
9
11
 
10
12
  WORKDIR /app
11
13
  RUN mkdir -p /app/data \
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "revisium",
3
- "version": "2.5.0-alpha.5",
3
+ "version": "2.5.0-alpha.6",
4
4
  "homepage": "https://revisium.io",
5
5
  "description": "A CLI tool for interacting with Revisium instances, providing migration management, schema export, and data export capabilities.",
6
6
  "author": "Anton Kashirov",