mirror of https://github.com/nocodb/nocodb
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
2.5 KiB
76 lines
2.5 KiB
name: 'NocoDB Nightly Dev Release' |
|
|
|
on: |
|
# Triggered manually |
|
workflow_dispatch: |
|
schedule: |
|
# every 6 hours |
|
- cron: '0 */6 * * *' |
|
|
|
jobs: |
|
# enrich tag for nightly auto release |
|
set-tag: |
|
runs-on: 'ubuntu-latest' |
|
steps: |
|
- name: Checkout |
|
uses: actions/checkout@v3 |
|
with: |
|
fetch-depth: 1 |
|
ref: ${{ github.ref }} |
|
- name: set-tag |
|
id: tag-step |
|
run: | |
|
# Get current date |
|
CURRENT_DATE=$(date +"%Y%m%d") |
|
CURRENT_TIME=$(date +"%H%M") |
|
TAG_NAME=${CURRENT_DATE}-${CURRENT_TIME} |
|
IS_DAILY='Y' |
|
# Get current version |
|
CURRENT_VERSION=$(cat ./packages/nocodb/package.json | jq -r ".version") |
|
# Set the tag |
|
if [[ ${{ github.event_name }} == 'workflow_dispatch' ]]; then |
|
IS_DAILY='N' |
|
fi |
|
echo "NIGHTLY_BUILD_TAG=${TAG_NAME}" >> $GITHUB_OUTPUT |
|
echo "IS_DAILY=${IS_DAILY}" >> $GITHUB_OUTPUT |
|
echo "CURRENT_VERSION=${CURRENT_VERSION}" >> $GITHUB_OUTPUT |
|
- name: verify-tag |
|
run: | |
|
echo ${{ steps.tag-step.outputs.NIGHTLY_BUILD_TAG }} |
|
echo ${{ steps.tag-step.outputs.IS_DAILY }} |
|
echo ${{ steps.tag-step.outputs.CURRENT_VERSION }} |
|
outputs: |
|
nightly_build_tag: ${{ steps.tag-step.outputs.NIGHTLY_BUILD_TAG }} |
|
is_daily: ${{ steps.tag-step.outputs.IS_DAILY }} |
|
current_version: ${{ steps.tag-step.outputs.CURRENT_VERSION }} |
|
# Build frontend and backend and publish to npm |
|
release-npm: |
|
needs: set-tag |
|
uses: ./.github/workflows/release-npm.yml |
|
with: |
|
tag: ${{ needs.set-tag.outputs.nightly_build_tag }} |
|
targetEnv: 'DEV' |
|
secrets: |
|
NPM_TOKEN: "${{ secrets.NPM_TOKEN }}" |
|
|
|
# Build executables and publish to GitHub |
|
release-executables: |
|
needs: [set-tag, release-npm] |
|
uses: ./.github/workflows/release-timely-executables.yml |
|
with: |
|
tag: ${{ needs.set-tag.outputs.current_version }}-${{ needs.set-tag.outputs.nightly_build_tag }} |
|
secrets: |
|
NC_GITHUB_TOKEN: "${{ secrets.NC_GITHUB_TOKEN }}" |
|
|
|
# Build docker image and push to docker hub |
|
release-docker: |
|
needs: [set-tag, release-npm] |
|
uses: ./.github/workflows/release-docker.yml |
|
with: |
|
currentVersion: ${{ needs.set-tag.outputs.current_version }} |
|
tag: ${{ needs.set-tag.outputs.nightly_build_tag }} |
|
targetEnv: 'DEV' |
|
isDaily: ${{ needs.set-tag.outputs.is_daily }} |
|
secrets: |
|
DOCKERHUB_USERNAME: "${{ secrets.DOCKERHUB_USERNAME }}" |
|
DOCKERHUB_TOKEN: "${{ secrets.DOCKERHUB_TOKEN }}"
|
|
|