Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
cf58d29
SK-3041:Add plan documents for package split.
yaswanth-pula-skyflow Aug 6, 2026
ca6cc20
SK-3041:Scaffolding of core branch(task1.0).
yaswanth-pula-skyflow Aug 6, 2026
c01a0a8
SK-3041:move genric libs to core package(T1.1)
yaswanth-pula-skyflow Aug 6, 2026
eb74347
SK-3041:Move logs, constants to the core folder(T1.2)
yaswanth-pula-skyflow Aug 7, 2026
15a96ef
SK-3041:Update SDK telemetry code(T1.3).
yaswanth-pula-skyflow Aug 7, 2026
0275058
SK-3041:Move current common types to core types(T1.4)
yaswanth-pula-skyflow Aug 7, 2026
745f715
SK-3041:Move validators to core folder(T1.5)
yaswanth-pula-skyflow Aug 7, 2026
b4ac854
SK-3041:Move Skyflow class types to core folder(T1.6)
yaswanth-pula-skyflow Aug 7, 2026
60ddc3c
SK-3041:Move internal types to core folder(T1.7)
yaswanth-pula-skyflow Aug 7, 2026
45e5794
SK-3041:Move errors & log helpers(T1.8)
yaswanth-pula-skyflow Aug 7, 2026
bd3035d
SK-3041:Move iframe validators(T1.9).
yaswanth-pula-skyflow Aug 7, 2026
00d6aed
SK-3041:Move collect & reveal helpers (T1.10).
yaswanth-pula-skyflow Aug 7, 2026
4ea041f
SK-3041:update eslintrc.
yaswanth-pula-skyflow Aug 9, 2026
12786f6
SK-3041:split skyflow-js as package.
yaswanth-pula-skyflow Aug 9, 2026
7a4fc71
SK-3041:Scafold skyflow-flowvault-js package.
yaswanth-pula-skyflow Aug 9, 2026
696a399
SK-3041:Add flowdb types to @core package.
yaswanth-pula-skyflow Aug 9, 2026
43c5418
SK-3041:Add flowdb erorr class.
yaswanth-pula-skyflow Aug 9, 2026
1bbcd23
SK-3041:Update flowdb collect data layer.
yaswanth-pula-skyflow Aug 9, 2026
07566b5
SK-3041:Update flowdb reveal data layer.
yaswanth-pula-skyflow Aug 9, 2026
f4c535c
SK-3041:Update collect elements for skyflow-flowvault.
yaswanth-pula-skyflow Aug 10, 2026
ac14771
SK-3041:Update reveal elements for skyflow-flowvault.
yaswanth-pula-skyflow Aug 10, 2026
9959286
SK-3041:Cleanyup file related code in skyflow-flowvault.
yaswanth-pula-skyflow Aug 10, 2026
3b0931f
SK-3041:Extend containers from core to flowvault package.
yaswanth-pula-skyflow Aug 10, 2026
70a486d
SK-3041:Update webpack's configuration.
yaswanth-pula-skyflow Aug 10, 2026
982fdb0
SK-3041:deduplication of skyflow-js & flowvault.
yaswanth-pula-skyflow Aug 10, 2026
3472d39
SK-3041:Dedupe the common libs & utilites.
yaswanth-pula-skyflow Aug 10, 2026
bd23247
SK-3041:Extract & Dedupe validators.
yaswanth-pula-skyflow Aug 10, 2026
d637e56
SK-3041:Dedupe internal-types & common-utils.
yaswanth-pula-skyflow Aug 10, 2026
89cda76
SK-3041:Create reveal common adapters.
yaswanth-pula-skyflow Aug 10, 2026
af1c66f
SK-3041:Move metrics to core package.
yaswanth-pula-skyflow Aug 10, 2026
a94d7bb
SK-3041:Move element options validators to core.
yaswanth-pula-skyflow Aug 10, 2026
32d66fa
SK-3041:Move internal-iframe-form to core package.
yaswanth-pula-skyflow Aug 10, 2026
e55b987
SK-3041:Move internal-iframe-element to core package.
yaswanth-pula-skyflow Aug 10, 2026
3d24b37
SK-3041:Add internal adapter to skyflow-js & flowvault packages.
yaswanth-pula-skyflow Aug 10, 2026
d97da18
SK-3041:Move indivuial client to core package.
yaswanth-pula-skyflow Aug 10, 2026
127f419
SK-3041:Move collect-element iframes to core package.
yaswanth-pula-skyflow Aug 10, 2026
be203b8
SK-3041:Move composable-element iframes to core package.
yaswanth-pula-skyflow Aug 10, 2026
ed3a1e2
SK-3041:Dedupe container & reveal code to core package.
yaswanth-pula-skyflow Aug 11, 2026
e5c7ad2
SK-3041:Dedupe container & reveal code to core package.
yaswanth-pula-skyflow Aug 11, 2026
26bfe94
SK-3041:dedupe helper files.
yaswanth-pula-skyflow Aug 11, 2026
90ca92e
SK-3041:dedupe composable containers.
yaswanth-pula-skyflow Aug 11, 2026
495fbae
SK-3041:Refactor folder structure.
yaswanth-pula-skyflow Aug 11, 2026
f840d64
SK-3041:Dedupe composable collect container.
yaswanth-pula-skyflow Aug 12, 2026
40bc2f0
SK-3041:Update webpack config for both packages.
yaswanth-pula-skyflow Aug 12, 2026
f592516
SK-3041:Make CI workspace-aware with per-package coverage.
yaswanth-pula-skyflow Aug 12, 2026
6a8236f
SK-3041:Update bump_version script.
yaswanth-pula-skyflow Aug 12, 2026
d5f0b42
SK-3041:Update common-release.yml workflow.
yaswanth-pula-skyflow Aug 12, 2026
9177edd
SK-3041:Update common-release.yml workflow.
yaswanth-pula-skyflow Aug 12, 2026
b24a12e
SK-3041:Update release workflow inputs for skyflow-js & flowvault.
yaswanth-pula-skyflow Aug 12, 2026
75bcd61
SK-3041:Scope COLLECT_ELEMENT_READY to element iframe for cross-packa…
yaswanth-pula-skyflow Aug 12, 2026
9250dff
SK-3041:Fix internal-release version namespace and gate commit-back t…
yaswanth-pula-skyflow Aug 12, 2026
1481c09
SK-3041:Update internal release for same source.
yaswanth-pula-skyflow Aug 12, 2026
97dfc80
SK-3041:Update release workflows.
yaswanth-pula-skyflow Aug 12, 2026
8aff211
SK-3041:Fix skyflow root import in flowvault.
yaswanth-pula-skyflow Aug 12, 2026
12e52f4
SK-3041:Fix types imports for flowvault.
yaswanth-pula-skyflow Aug 12, 2026
27eb0f3
SK-3041:Fix for flowvault tag extraction.
yaswanth-pula-skyflow Aug 12, 2026
f33ac2a
SK-3041:Extact Skyflow Class to Base core package.
yaswanth-pula-skyflow Aug 13, 2026
97cbb0b
SK-3041:Fix webpack errors w.r.t types.
yaswanth-pula-skyflow Aug 13, 2026
011d977
SK-3041:Re-trigger internal release.
yaswanth-pula-skyflow Aug 13, 2026
b6a13a1
SK-3041:Update common release workflow.
yaswanth-pula-skyflow Aug 13, 2026
fc11347
SK-3041:Update common release workflow.
yaswanth-pula-skyflow Aug 13, 2026
3257fdb
SK-3041:Update interfaces & bounded generics.
yaswanth-pula-skyflow Aug 13, 2026
b49cd89
SK-3041:Revamp core types & genrics.
yaswanth-pula-skyflow Aug 13, 2026
4a5f409
SK-3041:Revamp Collect Base & package split types.
yaswanth-pula-skyflow Aug 13, 2026
458ff87
SK-3041:Revamp the base types in core & package updates.
yaswanth-pula-skyflow Aug 14, 2026
d8476d7
SK-3041:Dedupe SkyflowFrame controller.
yaswanth-pula-skyflow Aug 14, 2026
074a325
SK-3041:Dedupe RevealFrame controllers.
yaswanth-pula-skyflow Aug 14, 2026
66a71af
SK-3041:Remove variant adpater injection.
yaswanth-pula-skyflow Aug 14, 2026
d5805f6
SK-3041:Update bounded genric types.
yaswanth-pula-skyflow Aug 14, 2026
7c15dce
SK-3041:Liftup the create() to core package.
yaswanth-pula-skyflow Aug 14, 2026
c7cc28f
SK-3041:Liftup the composable create() to core package.
yaswanth-pula-skyflow Aug 14, 2026
0ff95c7
SK-3041:Lift up composable collect container.
yaswanth-pula-skyflow Aug 14, 2026
541703f
SK-3041:Dedupe flowvault api utils.
yaswanth-pula-skyflow Aug 14, 2026
669181a
SK-3041:Revamp changes across packages.
yaswanth-pula-skyflow Aug 17, 2026
9fed8a3
SK-3041:Update README & samples for both packages.
yaswanth-pula-skyflow Aug 17, 2026
edfa90a
SK-3041:Fix minor issues with types & tests.
yaswanth-pula-skyflow Aug 18, 2026
58fd30b
SK-3041:Fix metadata object for skyflowContainer.
yaswanth-pula-skyflow Aug 18, 2026
1d4b79e
SK-3041:Add returnMockValue in collectElementOptions.
yaswanth-pula-skyflow Aug 18, 2026
22eb4f6
SK-3041:Fix skyflowContainer config.
yaswanth-pula-skyflow Aug 18, 2026
f232088
SK-3041:Update returnMockValue option.
yaswanth-pula-skyflow Aug 18, 2026
f7f0d64
SK-3041:Minor cleanups.
yaswanth-pula-skyflow Aug 18, 2026
dcde814
SK-3041:SkyflowElement Map cleanup due to no usage & readers.
yaswanth-pula-skyflow Aug 18, 2026
b250bd2
SK-3041:add cvv gate & removed unused emitter.
yaswanth-pula-skyflow Aug 18, 2026
255d581
SK-3041:Fix sdk version log telmetry leak.
yaswanth-pula-skyflow Aug 18, 2026
ee108a2
SK-3041:Fix httpCode as per proto.
yaswanth-pula-skyflow Aug 19, 2026
a532511
SK-3041:Handle collect partial error case with insert & update.
yaswanth-pula-skyflow Aug 19, 2026
c50d1c3
SK-3041:Disable logs for pureJS listeners in flowDB.
yaswanth-pula-skyflow Aug 19, 2026
e5a69a7
SK-3041:Add cross release triggers guards.
yaswanth-pula-skyflow Aug 19, 2026
0493817
SK-3041:Update internal release cache invalidation path for flowvault.
yaswanth-pula-skyflow Aug 19, 2026
033497e
SK-3041:Update .eslintignore file for webpack directory.
yaswanth-pula-skyflow Aug 19, 2026
932de55
SK-3041:Update flowvault-js sample.
yaswanth-pula-skyflow Aug 19, 2026
88d6895
SK-3041:Update test cases for flowvault package.
yaswanth-pula-skyflow Aug 19, 2026
b0692a1
SK-3041:Update loadash package.
yaswanth-pula-skyflow Aug 20, 2026
4f66049
SK-3041:Fix prototype pollution.
yaswanth-pula-skyflow Aug 20, 2026
8c7a3a8
SK-3041:update url validator.
yaswanth-pula-skyflow Aug 20, 2026
ba39ed6
SK-3041:Address feedback items source code changes.
yaswanth-pula-skyflow Aug 21, 2026
ba24b92
SK-3041:Address feedback items readme & sample changes.
yaswanth-pula-skyflow Aug 21, 2026
9070929
SK-3041:Address feedback items readme & sample changes.
yaswanth-pula-skyflow Aug 24, 2026
ae237c0
SK-3041:Address feedback items readme & sample changes.
yaswanth-pula-skyflow Aug 24, 2026
901a4d2
SK-3041:Update package-lock.json.
yaswanth-pula-skyflow Aug 24, 2026
f3b2824
SK-3041:Remove cardbran choice sample.
yaswanth-pula-skyflow Aug 24, 2026
53b6351
SK-3041:Remove docs folder.
yaswanth-pula-skyflow Aug 25, 2026
0caaf2e
SK-3041:Update Release workflows.
yaswanth-pula-skyflow Aug 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 4 additions & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@

dist
types
/types
packages/*/types
coverage
tests

babel.config.js
webpack.*
webpack
jest.config.js
samples
32 changes: 30 additions & 2 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"project": "./tsconfig.json"
"project": "./tsconfig.eslint.json"
},
"plugins": [
"@typescript-eslint"
Expand All @@ -23,6 +23,23 @@
}
},
"rules": {
"import/no-restricted-paths": [
"error",
{
"zones": [
{
"target": "./core",
"from": "./packages",
"message": "core/ must not import from packages/ — the @core boundary points downward only. Move shared code into core/ instead of importing up."
},
{
"target": "./packages/skyflow-flowvault-js",
"from": "./packages/skyflow-js",
"message": "skyflow-flowvault-js must not import from skyflow-js — the two SDK packages are independent. Share code via @core only."
}
]
}
],
"import/no-cycle": "off",
"prefer-promise-reject-errors": "off",
"max-classes-per-file": [
Expand All @@ -32,5 +49,16 @@
"no-param-reassign": "off",
"prefer-destructuring": "off",
"@typescript-eslint/no-implied-eval": "off"
}
},
"overrides": [
{
"files": ["core/**/*.ts", "core/**/*.js"],
"rules": {
"import/no-extraneous-dependencies": [
"error",
{ "packageDir": ["./", "./packages/skyflow-js"] }
]
}
}
]
}
12 changes: 11 additions & 1 deletion .github/workflows/beta-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,11 @@ name: Public Beta Release

on:
push:
tags: '*.*.*-beta.*'
# The '!flowvault-*' negation excludes the flowvault namespace: a glob '*'
# matches '-', so a plain '*.*.*-beta.*' would also match a flowvault beta
# tag (flowvault-v1.0.0-beta.3) and fire this skyflow-js workflow with a
# garbage version. flowvault betas are handled by flowvault-beta-release.yml.
tags: ['*.*.*-beta.*', '!flowvault-*']
paths-ignore:
- "package.json"
- "package-lock.json"
Expand All @@ -15,6 +19,12 @@ jobs:
with:
REGISTRY_URL: "https://registry.npmjs.org"
TAG: "beta"
PACKAGE_DIR: "packages/skyflow-js"
PACKAGE_NAME: "skyflow-js"
DIST_DIR: "packages/skyflow-js/dist/v1"
S3_PREFIX: ""
TAG_PREFIX: ""
INVALIDATION_PATH: "/*"
secrets:
IFRAME_SECURE_ORIGIN: ${{ secrets.SANDBOX_IFRAME_SECURE_ORIGIN }}
IFRAME_SECURE_SITE: ${{ secrets.SANDBOX_IFRAME_SECURE_SITE }}
Expand Down
115 changes: 80 additions & 35 deletions .github/workflows/common-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,39 @@ on:
REGISTRY_URL:
required: false
type: string
# --- Package targeting (defaults preserve skyflow-js behavior) ---
PACKAGE_DIR:
required: false
type: string
default: packages/skyflow-js
PACKAGE_NAME:
required: false
type: string
default: skyflow-js
# Tag namespace for this package. Empty => bare-semver tags (skyflow-js,
# e.g. "2.7.9"); "flowvault-" => "flowvault-v1.0.0". Stripped (along with
# an optional leading "v") from the triggering tag to get the version.
TAG_PREFIX:
required: false
type: string
default: ''
DIST_DIR:
required: false
type: string
default: packages/skyflow-js/dist/v1
# S3 key prefix placed BEFORE the version segment (e.g. "flowvault/").
# Empty => s3://bucket/v<version>/ (skyflow-js, unchanged).
S3_PREFIX:
required: false
type: string
default: ''
# CloudFront invalidation path. "/*" preserves current behavior; a
# package can scope it (e.g. "/flowvault/*") to avoid churning the
# other package's cache.
INVALIDATION_PATH:
required: false
type: string
default: '/*'
secrets:
PAT_ACTIONS:
required: true
Expand Down Expand Up @@ -42,29 +75,40 @@ jobs:
token: ${{ secrets.PAT_ACTIONS }}
fetch-depth: 0

- uses: actions/setup-node@v2
- uses: actions/setup-node@v4
with:
node-version: 14.17.6
node-version: '20.x'
registry-url: ${{ inputs.REGISTRY_URL }}

- run: npm install --ignore-scripts

- name: Get Previous Tag
run: |
echo "TAG=$(git describe --abbrev=0 --tags $(git rev-list --tags --max-count=1))" >> $GITHUB_ENV

- name: Set RELEASE_VERSION
run: |
PREFIX="${{ inputs.TAG_PREFIX }}"
if [ "${{ inputs.TAG }}" == "internal" ]; then
echo "RELEASE_VERSION=${{ env.TAG }}-dev.$(git rev-parse --short $GITHUB_SHA)" >> $GITHUB_ENV
if [ -n "$PREFIX" ]; then
PREV_TAG=$(git describe --tags --abbrev=0 --match "${PREFIX}*" 2>/dev/null || true)
else
PREV_TAG=$(git describe --tags --abbrev=0 --match '[0-9]*' --exclude 'flowvault-*' 2>/dev/null || true)
fi
if [ -z "$PREV_TAG" ]; then
BASE_VERSION=$(node -p "require('./${{ inputs.PACKAGE_DIR }}/package.json').version")
else
BASE_VERSION="${PREV_TAG#$PREFIX}"
BASE_VERSION="${BASE_VERSION#v}"
fi
echo "RELEASE_VERSION=${BASE_VERSION}-dev.$(git rev-parse --short $GITHUB_SHA)" >> $GITHUB_ENV
else
echo "RELEASE_VERSION=${{ env.TAG }}" >> $GITHUB_ENV
BASE_VERSION="${{ github.ref_name }}"
BASE_VERSION="${BASE_VERSION#$PREFIX}"
BASE_VERSION="${BASE_VERSION#v}"
echo "RELEASE_VERSION=${BASE_VERSION}" >> $GITHUB_ENV
fi

- name: Bump Version
run: |
chmod +x ./scripts/bump_version.sh
./scripts/bump_version.sh "${{ env.RELEASE_VERSION }}"
./scripts/bump_version.sh "${{ env.RELEASE_VERSION }}" "${{ inputs.PACKAGE_DIR }}"

- name: Resolve Branch for the Tagged Commit
id: resolve-branch
Expand All @@ -83,25 +127,26 @@ jobs:
echo "branch_name=$BRANCH_NAME" >> $GITHUB_ENV

- name: Commit Changes
if: ${{ inputs.tag == 'beta' || inputs.tag == 'public' }}
run: |
git config user.name ${{ github.actor }}
git config user.email ${{ github.actor }}@users.noreply.github.com
git checkout ${{ env.branch_name }}
git add package.json
git add ${{ inputs.PACKAGE_DIR }}/package.json
git commit -m "[AUTOMATED] Release - ${{ env.RELEASE_VERSION }}"
git push origin ${{ env.branch_name }} -f

- name: Build Browser SDK
run: npm run build-browser-sdk
run: npm run build-browser-sdk -w ${{ inputs.PACKAGE_NAME }}
env:
IFRAME_SECURE_ORIGIN: ${{ secrets.IFRAME_SECURE_ORIGIN }}
IFRAME_SECURE_SITE: "v${{ env.RELEASE_VERSION }}/${{ secrets.IFRAME_SECURE_SITE }}"
IFRAME_SECURE_SITE: "${{ inputs.S3_PREFIX }}v${{ env.RELEASE_VERSION }}/${{ secrets.IFRAME_SECURE_SITE }}"

- name: Build Iframe
run: npm run build-iframe
run: npm run build-iframe -w ${{ inputs.PACKAGE_NAME }}
env:
IFRAME_SECURE_ORIGIN: ${{ secrets.IFRAME_SECURE_ORIGIN }}
IFRAME_SECURE_SITE: "v${{ env.RELEASE_VERSION }}/${{ secrets.IFRAME_SECURE_SITE }}"
IFRAME_SECURE_SITE: "${{ inputs.S3_PREFIX }}v${{ env.RELEASE_VERSION }}/${{ secrets.IFRAME_SECURE_SITE }}"

- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
Expand All @@ -110,49 +155,49 @@ jobs:
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}

# - name: Set Latest Tag
# run: |
# mkdir tags
# echo "v${{ env.RELEASE_VERSION }}" > tags/latest

# - name: Deploy Latest Tag to S3
# run: aws s3 cp --recursive tags s3://${{ secrets.AWS_BUCKET_NAME }}/

# - name: Remove Latest Tag
# run: rm -rf tags

- name: Deploy to S3
run: |
aws s3 cp --recursive dist/v1 s3://${{ secrets.AWS_BUCKET_NAME }}/v${{ env.RELEASE_VERSION }}/
aws s3 cp --recursive ${{ inputs.DIST_DIR }} s3://${{ secrets.AWS_BUCKET_NAME }}/${{ inputs.S3_PREFIX }}v${{ env.RELEASE_VERSION }}/
- name: Update latest pointer in S3
run: |
printf 'v%s' "${{ env.RELEASE_VERSION }}" > latest
aws s3 cp latest \
"s3://${{ secrets.AWS_BUCKET_NAME }}/${{ inputs.S3_PREFIX }}latest" \
--content-type text/plain \
--cache-control no-cache
rm -f latest

- name: Build Node SDK
run: |
npm run build:types
npm run build-node-sdk
npm run build:types -w ${{ inputs.PACKAGE_NAME }}
npm run build-node-sdk -w ${{ inputs.PACKAGE_NAME }}
env:
IFRAME_SECURE_ORIGIN: ${{ secrets.IFRAME_SECURE_ORIGIN }}
IFRAME_SECURE_SITE: "v${{ env.RELEASE_VERSION }}/${{ secrets.IFRAME_SECURE_SITE }}"
IFRAME_SECURE_SITE: "${{ inputs.S3_PREFIX }}v${{ env.RELEASE_VERSION }}/${{ secrets.IFRAME_SECURE_SITE }}"

- name: Publish SDK
run: |
if [ "${{ inputs.TAG }}" == "beta" ]; then
npm publish --tag v${{ env.RELEASE_VERSION }}
npm publish -w ${{ inputs.PACKAGE_NAME }} --tag beta
elif [ "${{ inputs.TAG }}" == "internal" ]; then
curl -u ${{ secrets.JFROG_USERNAME }}:${{ secrets.JFROG_PASSWORD }} https://prekarilabs.jfrog.io/prekarilabs/api/npm/auth/ > ~/.npmrc
JFROG_AUTH=$(echo -n "$JFROG_USERNAME:$JFROG_PASSWORD" | base64 -w 0)
echo "::add-mask::${JFROG_AUTH}"
npm config set registry https://prekarilabs.jfrog.io/prekarilabs/api/npm/npm/
npm config set unsafe-perm true
npm publish
npm config set //prekarilabs.jfrog.io/prekarilabs/api/npm/npm/:_auth "$JFROG_AUTH"
npm publish -w ${{ inputs.PACKAGE_NAME }}
else
npm publish
npm publish -w ${{ inputs.PACKAGE_NAME }}
fi
env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
JFROG_USERNAME: ${{ secrets.JFROG_USERNAME }}
JFROG_PASSWORD: ${{ secrets.JFROG_PASSWORD }}

- name: Invalidate CloudFront cache 10 times
run: |
for i in {1..10}; do
aws cloudfront create-invalidation \
--distribution-id ${{ secrets.CF_DISTRIBUTION_ID }} \
--paths "/*"
--paths "${{ inputs.INVALIDATION_PATH }}"
sleep 10
done
40 changes: 40 additions & 0 deletions .github/workflows/flowvault-beta-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: FlowVault Public Beta Release

# Release entry point for skyflow-flowvault-js (flowDB). Triggered by a
# flowvault-namespaced beta tag so it never collides with skyflow-js's bare
# semver tags. Calls the shared reusable workflow with flowvault's package
# targeting (S3_PREFIX/TAG_PREFIX/INVALIDATION_PATH), landing in the SAME
# sandbox bucket + CloudFront distribution under the flowvault/ prefix.
on:
push:
tags: 'flowvault-v*.*.*-beta.*'
paths-ignore:
- "package.json"
- "package-lock.json"
- "*.md"


jobs:
flowvault-beta-release:
uses: ./.github/workflows/common-release.yml
with:
REGISTRY_URL: "https://registry.npmjs.org"
TAG: "beta"
PACKAGE_DIR: "packages/skyflow-flowvault-js"
PACKAGE_NAME: "skyflow-flowvault-js"
DIST_DIR: "packages/skyflow-flowvault-js/dist/v1"
S3_PREFIX: "flowvault/"
TAG_PREFIX: "flowvault-"
INVALIDATION_PATH: "/*"
secrets:
# Same sandbox bucket / distribution / CDN origin as skyflow-js — flowDB
# just lands under the flowvault/ key prefix, so the shared SANDBOX_*
IFRAME_SECURE_ORIGIN: ${{ secrets.SANDBOX_IFRAME_SECURE_ORIGIN }}
IFRAME_SECURE_SITE: ${{ secrets.SANDBOX_IFRAME_SECURE_SITE }}
AWS_ACCESS_KEY_ID: ${{ secrets.SANDBOX_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.SANDBOX_AWS_ACCESS_KEY_SECRET }}
AWS_REGION: ${{ secrets.SANDBOX_AWS_REGION }}
AWS_BUCKET_NAME: ${{ secrets.SANDBOX_AWS_BUCKET_NAME }}
CF_DISTRIBUTION_ID: ${{ secrets.SANDBOX_CF_DISTRIBUTION_ID }}
PAT_ACTIONS: ${{ secrets.PAT_ACTIONS }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
42 changes: 42 additions & 0 deletions .github/workflows/flowvault-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: FlowVault Public Release

# Production release entry point for skyflow-flowvault-js (flowDB). Triggered by
# a flowvault-namespaced release tag. The '!...-beta*' negation guard ensures a
# beta tag (flowvault-v1.0.0-beta.3) does NOT also fire this prod workflow —
# only clean release tags (flowvault-v1.0.0) do. Lands in the SAME prod bucket +
# CloudFront distribution as skyflow-js, under the flowvault/ prefix.
on:
push:
tags:
- 'flowvault-v*'
- '!flowvault-v*-beta*'
paths-ignore:
- "package.json"
- "package-lock.json"
- "*.md"


jobs:
flowvault-public-release:
uses: ./.github/workflows/common-release.yml
with:
REGISTRY_URL: "https://registry.npmjs.org"
TAG: "public"
PACKAGE_DIR: "packages/skyflow-flowvault-js"
PACKAGE_NAME: "skyflow-flowvault-js"
DIST_DIR: "packages/skyflow-flowvault-js/dist/v1"
S3_PREFIX: "flowvault/"
TAG_PREFIX: "flowvault-"
INVALIDATION_PATH: "/*"
secrets:
# Same prod bucket / distribution / CDN origin as skyflow-js — flowDB just
# lands under the flowvault/ key prefix, so the shared PROD_* secrets are
IFRAME_SECURE_ORIGIN: ${{ secrets.PROD_IFRAME_SECURE_ORIGIN }}
IFRAME_SECURE_SITE: ${{ secrets.PROD_IFRAME_SECURE_SITE }}
AWS_ACCESS_KEY_ID: ${{ secrets.PROD_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.PROD_AWS_ACCESS_KEY_SECRET }}
AWS_REGION: ${{ secrets.PROD_AWS_REGION }}
AWS_BUCKET_NAME: ${{ secrets.PROD_AWS_BUCKET_NAME }}
CF_DISTRIBUTION_ID: ${{ secrets.PROD_CF_DISTRIBUTION_ID }}
PAT_ACTIONS: ${{ secrets.PAT_ACTIONS }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
Loading
Loading