-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
FIO-8506: Gh Action To Publish Protected Eval (#6)
* Needed to make some edits in order for it to build correctly. * Adds PR template and ci.yml file * View deploy output test * Publish dry run * First publish to dev tag * Only publishes if target branch is equal to master
- Loading branch information
1 parent
93103b8
commit 9a4b5c7
Showing
13 changed files
with
320 additions
and
79 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
## Link to Jira Ticket | ||
|
||
https://formio.atlassian.net/browse/FIO-XXXX | ||
|
||
## Description | ||
|
||
**What changed?** | ||
|
||
*Use this section to provide a summary description of the changes you've made* | ||
|
||
**Why have you chosen this solution?** | ||
|
||
*Use this section to justify your choices* | ||
|
||
## Breaking Changes / Backwards Compatibility | ||
|
||
*Use this section to describe any potentially breaking changes this PR introduces or any effects this PR might have on backwards compatibility* | ||
|
||
## Dependencies | ||
|
||
*Use this section to list any dependent changes/PRs in other Form.io modules* | ||
|
||
## How has this PR been tested? | ||
|
||
*Use this section to describe how you tested your changes; if you haven't included automated tests, justify your reasoning* | ||
|
||
## Checklist: | ||
|
||
- [ ] I have completed the above PR template | ||
- [ ] I have commented my code, particularly in hard-to-understand areas | ||
- [ ] I have made corresponding changes to the documentation (if applicable) | ||
- [ ] My changes generate no new warnings | ||
- [ ] My changes include tests that prove my fix is effective (or that my feature works as intended) | ||
- [ ] New and existing unit/integration tests pass locally with my changes | ||
- [ ] Any dependent changes have corresponding PRs that are listed above |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
name: Build, Publish | ||
|
||
on: | ||
pull_request: | ||
types: [opened, synchronize] | ||
|
||
env: | ||
NODE_VERSION: 20.x | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Check out repository code ${{ github.repository }} on ${{ github.ref }} | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Configure Git user | ||
run: | | ||
git config --global user.email "pkgbot@form.io" | ||
git config --global user.name "pkgbot" | ||
- name: Merge target branch into current branch | ||
run: | | ||
git fetch origin ${{ github.event.pull_request.base.ref }}:${{ github.event.pull_request.base.ref }} | ||
git merge ${{ github.event.pull_request.base.ref }} --no-commit --no-ff | ||
- name: Check for merge conflicts | ||
run: | | ||
if ! git merge --no-commit --no-ff ${{ github.event.pull_request.base.ref }}; then | ||
echo "Merge conflicts detected." | ||
git merge --abort | ||
exit 1 | ||
else | ||
echo "Merge successful." | ||
fi | ||
- name: Set up Node.js ${{ env.NODE_VERSION }} | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: ${{ env.NODE_VERSION }} | ||
cache: "npm" | ||
|
||
- name: Install dependencies | ||
run: yarn install --frozen-lockfile | ||
|
||
- name: Cache node modules | ||
uses: actions/cache@v3 | ||
with: | ||
path: node_modules | ||
key: ${{ runner.os }}-node-${{ hashFiles('**/yarn.lock') }} | ||
restore-keys: | | ||
${{ runner.os }}-node- | ||
- name: Build | ||
uses: borales/actions-yarn@v4 | ||
with: | ||
cmd: build | ||
|
||
- name: Upload build artifact | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: build-artifact | ||
path: | | ||
dist/ | ||
lib/ | ||
Changelog.md | ||
README.md | ||
package.json | ||
publish: | ||
needs: build | ||
if: github.event.pull_request.base.ref == 'master' | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Download build artifact | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: build-artifact | ||
path: ./ | ||
|
||
- name: View downloaded build output | ||
run: ls -a | ||
|
||
- name: Add npm token to .npmrc | ||
run: | | ||
echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc | ||
- name: Prepare version for publish | ||
id: prep | ||
run: | | ||
# Extract the pull request number and the short SHA of the commit | ||
PR_NUMBER=$(echo ${{ github.event.number }}) | ||
COMMIT_SHORT_SHA=$(echo "${{ github.event.pull_request.head.sha }}" | cut -c1-7) | ||
# Extract the current version from package.json | ||
CURRENT_VERSION=$(node -p "require('./package.json').version") | ||
# If the current version includes '-rc.', remove it and everything after | ||
# This step ensures that we start with a base version like '3.0.0' even if it was a release candidate | ||
BASE_VERSION=$(echo "$CURRENT_VERSION" | cut -d'-' -f1) | ||
# Construct the new version string | ||
NEW_VERSION="${BASE_VERSION}-dev.${PR_NUMBER}.${COMMIT_SHORT_SHA}" | ||
# Output the new version for use in subsequent GitHub Actions steps | ||
echo "NEW_VERSION=$NEW_VERSION" >> $GITHUB_ENV | ||
- name: Echo version to publish | ||
run: | | ||
echo "Version to publish: $NEW_VERSION" | ||
- name: Publish to npm | ||
run: | | ||
npm version $NEW_VERSION | ||
yarn publish --tag dev |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,2 @@ | ||
import { Utils as FormioUtils } from 'formiojs'; | ||
import { Utils as FormioUtils } from '@formio/js'; | ||
export default FormioUtils; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,30 @@ | ||
import _ from 'lodash'; | ||
import { | ||
chunk, compact, concat, difference, differenceBy, differenceWith, | ||
drop, dropRight, dropRightWhile, dropWhile, findIndex, findLastIndex, | ||
first, flatten, flattenDeep, flattenDepth, fromPairs, head, indexOf, | ||
initial, intersection, intersectionBy, intersectionWith, join, last, | ||
lastIndexOf, nth, pull, pullAll, pullAllBy, pullAllWith, pullAt, remove, | ||
reverse, slice, sortedIndex, sortedIndexBy, sortedIndexOf, sortedLastIndex, | ||
sortedLastIndexBy, sortedLastIndexOf, sortedUniq, sortedUniqBy, tail, | ||
take, takeRight, takeRightWhile, takeWhile, union, unionBy, unionWith, | ||
uniq, uniqBy, uniqWith, unzip, unzipWith, without, xor, xorBy, xorWith, | ||
zip, zipObject, zipObjectDeep, zipWith | ||
} from 'lodash'; | ||
|
||
const lodashOperators = [ | ||
chunk, compact, concat, difference, differenceBy, differenceWith, | ||
drop, dropRight, dropRightWhile, dropWhile, findIndex, findLastIndex, | ||
first, flatten, flattenDeep, flattenDepth, fromPairs, head, indexOf, | ||
initial, intersection, intersectionBy, intersectionWith, join, last, | ||
lastIndexOf, nth, pull, pullAll, pullAllBy, pullAllWith, pullAt, remove, | ||
reverse, slice, sortedIndex, sortedIndexBy, sortedIndexOf, sortedLastIndex, | ||
sortedLastIndexBy, sortedLastIndexOf, sortedUniq, sortedUniqBy, tail, | ||
take, takeRight, takeRightWhile, takeWhile, union, unionBy, unionWith, | ||
uniq, uniqBy, uniqWith, unzip, unzipWith, without, xor, xorBy, xorWith, | ||
zip, zipObject, zipObjectDeep, zipWith | ||
]; | ||
|
||
export const lodash = lodashOperators.reduce((obj, operator) => _.set(obj, operator.name, operator), {}); | ||
|
||
import {lodashOperators} from 'formiojs/utils/jsonlogic/operators'; | ||
|
||
export const lodash = lodashOperators.reduce((obj, operator) => _.set(obj, operator, _[operator]), {}); |
Oops, something went wrong.