From 5eb2724e7f0db3205210a60f3f38f32da6a56bf7 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Mon, 20 Dec 2021 09:33:54 +0000 Subject: [PATCH 01/40] using lerna version in preprod job --- .github/workflows/deploy-preprod.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index ce789e71ec..6f6356d74d 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -23,9 +23,11 @@ jobs: aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} aws-region: eu-west-1 - - name: 'Get Previous tag' - id: previoustag - uses: "WyriHaximus/github-action-get-previous-tag@v1" + - name: Get the latest budibase release version + id: version + run: | + release_version=$(cat lerna.json | jq -r '.version') + echo "RELEASE_VERSION=$release_version" >> $GITHUB_ENV # - name: Pull values.yaml from budibase-infra # run: | @@ -43,7 +45,7 @@ jobs: token: ${{ github.token }} values: | globals: - appVersion: ${{ steps.previoustag.outputs.tag }} + appVersion: v${{ env.RELEASE_VERSION }} # value-files: >- # [ # "charts/budibase/values.yaml" From 42ea6287331eedc6eb96c18d475d76b5ffb4f60a Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 12:06:31 +0000 Subject: [PATCH 02/40] preprod helm setup --- .github/workflows/budibase_ci.yml | 2 ++ .github/workflows/deploy-preprod.yml | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/.github/workflows/budibase_ci.yml b/.github/workflows/budibase_ci.yml index 5c4a111e23..7e95115415 100644 --- a/.github/workflows/budibase_ci.yml +++ b/.github/workflows/budibase_ci.yml @@ -41,4 +41,6 @@ jobs: files: ./packages/server/coverage/clover.xml name: codecov-umbrella verbose: true + + # TODO: parallelise this - run: yarn test:e2e:ci diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index 6f6356d74d..6dcfdbb521 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -36,6 +36,10 @@ jobs: # -o values.preprod.yaml \ # -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/values.preprod.yaml + - name: Setup Helm + uses: azure/setup-helm@v1 + id: helm-install + - name: Deploy to Preprod Environment uses: deliverybot/helm@v1 with: From abf952a743901e1cc5a752b0a9c6c19829b7151a Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 13:36:47 +0000 Subject: [PATCH 03/40] avoid using tiller in helm --- .github/workflows/deploy-preprod.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index 6dcfdbb521..6e2be5768e 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -36,10 +36,6 @@ jobs: # -o values.preprod.yaml \ # -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/values.preprod.yaml - - name: Setup Helm - uses: azure/setup-helm@v1 - id: helm-install - - name: Deploy to Preprod Environment uses: deliverybot/helm@v1 with: @@ -47,6 +43,7 @@ jobs: namespace: budibase chart: charts/budibase token: ${{ github.token }} + helm: helm3 values: | globals: appVersion: v${{ env.RELEASE_VERSION }} From 6d808d126d69988156d44d4684e968365f02193d Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 13:54:24 +0000 Subject: [PATCH 04/40] don't spin up nginx controller --- .github/workflows/deploy-preprod.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index 6e2be5768e..e566c00b3c 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -47,6 +47,8 @@ jobs: values: | globals: appVersion: v${{ env.RELEASE_VERSION }} + ingress: + nginx: false # value-files: >- # [ # "charts/budibase/values.yaml" From 1488d466b385c66a7fcd07fec0e59e2c5175978b Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 14:13:19 +0000 Subject: [PATCH 05/40] remove traefik --- .github/workflows/deploy-preprod.yml | 3 ++- .github/workflows/release.yml | 8 ++++++-- charts/budibase/values.yaml | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index e566c00b3c..d77122d24a 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -48,7 +48,8 @@ jobs: globals: appVersion: v${{ env.RELEASE_VERSION }} ingress: - nginx: false + enabled: true + nginx: true # value-files: >- # [ # "charts/budibase/values.yaml" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 859d89f18b..02664f3dee 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -71,9 +71,12 @@ jobs: # namespace: budibase # chart: charts/budibase # token: ${{ github.token }} + # helm: helm3 # values: | # globals: # appVersion: ${{ steps.previoustag.outputs.tag }} + # ingress: + # nginx: true # # value-files: >- # # [ # # "charts/budibase/values.yaml" @@ -85,5 +88,6 @@ jobs: # uses: tsickert/discord-webhook@v4.0.0 # with: # webhook-url: ${{ secrets.PROD_DEPLOY_WEBHOOK_URL }} - # content: "Preprod Deployment Complete: ${{ env.RELEASE_VERSION }} deployed to Budibase Pre-prod." - # embed-title: ${{ env.RELEASE_VERSION }} + # content: "Preprod Deployment Complete: ${{ steps.previoustag.outputs.tag }} deployed to Budibase Pre-prod." + # embed-title: ${{ steps.previoustag.outputs.tag }} + diff --git a/charts/budibase/values.yaml b/charts/budibase/values.yaml index b634f1581f..4666d01c70 100644 --- a/charts/budibase/values.yaml +++ b/charts/budibase/values.yaml @@ -40,7 +40,7 @@ service: port: 10000 ingress: - enabled: false + enabled: true aws: false nginx: true certificateArn: "" @@ -302,4 +302,4 @@ couchdb: initialDelaySeconds: 0 periodSeconds: 10 successThreshold: 1 - timeoutSeconds: 1 \ No newline at end of file + timeoutSeconds: 1 From 7abf272d6d2467bf70fdd246320fc17b710051a8 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 15:05:43 +0000 Subject: [PATCH 06/40] self host chart deploy --- .github/workflows/deploy-preprod.yml | 20 +++++++-------- .github/workflows/release-selfhost.yml | 25 +++++++++--------- .github/workflows/release.yml | 35 -------------------------- 3 files changed, 23 insertions(+), 57 deletions(-) diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index d77122d24a..0105b49765 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -29,12 +29,12 @@ jobs: release_version=$(cat lerna.json | jq -r '.version') echo "RELEASE_VERSION=$release_version" >> $GITHUB_ENV - # - name: Pull values.yaml from budibase-infra - # run: | - # curl -H "Authorization: token ${{ secrets.GH_PERSONAL_TOKEN }}" \ [c3a7a9d12] - # -H 'Accept: application/vnd.github.v3.raw' \ - # -o values.preprod.yaml \ - # -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/values.preprod.yaml + - name: Pull values.yaml from budibase-infra + run: | + curl -H "Authorization: token ${{ secrets.GH_PERSONAL_TOKEN }}" \ + -H 'Accept: application/vnd.github.v3.raw' \ + -o values.preprod.yaml \ + -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/budibase-preprod/values.yaml - name: Deploy to Preprod Environment uses: deliverybot/helm@v1 @@ -50,10 +50,10 @@ jobs: ingress: enabled: true nginx: true - # value-files: >- - # [ - # "charts/budibase/values.yaml" - # ] + value-files: >- + [ + "values.preprod.yaml" + ] env: KUBECONFIG_FILE: '${{ secrets.PREPROD_KUBECONFIG }}' diff --git a/.github/workflows/release-selfhost.yml b/.github/workflows/release-selfhost.yml index 3e2e5ca6b7..4d038c84c4 100644 --- a/.github/workflows/release-selfhost.yml +++ b/.github/workflows/release-selfhost.yml @@ -41,18 +41,19 @@ jobs: uses: azure/setup-helm@v1 id: helm-install - # - name: Build and release helm chart - # run: | - # git config user.name "Budibase Helm Bot" - # git config user.email "<>" - # mv budibase-${{ env.RELEASE_VERSION }}.tgz docs - # helm repo index docs - # git checkout gh-pages - # git add -A - # git commit -m "Helm Release: ${{ env.RELEASE_VERSION }}" - # git push - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Build and release helm chart + run: | + git config user.name "Budibase Helm Bot" + git config user.email "<>" + git pull + mv budibase-${{ env.RELEASE_VERSION }}.tgz docs + helm repo index docs + git checkout gh-pages + git add -A + git commit -m "Helm Release: ${{ env.RELEASE_VERSION }}" + git push + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # - name: Deploy # uses: peaceiris/actions-gh-pages@v3 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 02664f3dee..9e8dc3a0b4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -56,38 +56,3 @@ jobs: DOCKER_USER: ${{ secrets.DOCKER_USERNAME }} DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} BUDIBASE_RELEASE_VERSION: ${{ steps.previoustag.outputs.tag }} - - # - name: Pull values.yaml from budibase-infra - # run: | - # curl -H "Authorization: token ${{ secrets.GH_PERSONAL_TOKEN }}" \ [c3a7a9d12] - # -H 'Accept: application/vnd.github.v3.raw' \ - # -o values.preprod.yaml \ - # -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/values.preprod.yaml - - # - name: Deploy to Preprod Environment - # uses: deliverybot/helm@v1 - # with: - # release: budibase-preprod - # namespace: budibase - # chart: charts/budibase - # token: ${{ github.token }} - # helm: helm3 - # values: | - # globals: - # appVersion: ${{ steps.previoustag.outputs.tag }} - # ingress: - # nginx: true - # # value-files: >- - # # [ - # # "charts/budibase/values.yaml" - # # ] - # env: - # KUBECONFIG_FILE: '${{ secrets.PREPROD_KUBECONFIG }}' - - # - name: Discord Webhook Action - # uses: tsickert/discord-webhook@v4.0.0 - # with: - # webhook-url: ${{ secrets.PROD_DEPLOY_WEBHOOK_URL }} - # content: "Preprod Deployment Complete: ${{ steps.previoustag.outputs.tag }} deployed to Budibase Pre-prod." - # embed-title: ${{ steps.previoustag.outputs.tag }} - From 237bd8ab48391ddd86f10b8e32a2f304c2da3601 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 15:12:28 +0000 Subject: [PATCH 07/40] helm release --- .github/workflows/release-selfhost.yml | 3 ++- charts/budibase/Chart.yaml | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release-selfhost.yml b/.github/workflows/release-selfhost.yml index 4d038c84c4..90f578cf56 100644 --- a/.github/workflows/release-selfhost.yml +++ b/.github/workflows/release-selfhost.yml @@ -9,7 +9,7 @@ jobs: steps: - uses: actions/checkout@v2 - with: + with: fetch_depth: 0 - name: Tag and release Docker images (Self Host) @@ -46,6 +46,7 @@ jobs: git config user.name "Budibase Helm Bot" git config user.email "<>" git pull + helm package charts/budibase mv budibase-${{ env.RELEASE_VERSION }}.tgz docs helm repo index docs git checkout gh-pages diff --git a/charts/budibase/Chart.yaml b/charts/budibase/Chart.yaml index cec5af2914..cc7119f57d 100644 --- a/charts/budibase/Chart.yaml +++ b/charts/budibase/Chart.yaml @@ -11,8 +11,8 @@ sources: - https://github.com/Budibase/budibase - https://budibase.com type: application -version: 1.0.0 -appVersion: 1.0.20 +version: 0.2.5 +appVersion: 1.0.25 dependencies: - name: couchdb version: 3.3.4 From 63e863456731e536c7a536e0774ed379110327fe Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 15:26:49 +0000 Subject: [PATCH 08/40] move tar to docs folder --- .github/workflows/release-selfhost.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-selfhost.yml b/.github/workflows/release-selfhost.yml index 90f578cf56..38154e7411 100644 --- a/.github/workflows/release-selfhost.yml +++ b/.github/workflows/release-selfhost.yml @@ -47,7 +47,7 @@ jobs: git config user.email "<>" git pull helm package charts/budibase - mv budibase-${{ env.RELEASE_VERSION }}.tgz docs + mv *.tgz docs helm repo index docs git checkout gh-pages git add -A From a77d6cbc42124bd2db5bb0c782cc0ab189c4f389 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 15:39:40 +0000 Subject: [PATCH 09/40] package then commit --- .github/workflows/release-selfhost.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-selfhost.yml b/.github/workflows/release-selfhost.yml index 38154e7411..2eb2439faa 100644 --- a/.github/workflows/release-selfhost.yml +++ b/.github/workflows/release-selfhost.yml @@ -47,9 +47,9 @@ jobs: git config user.email "<>" git pull helm package charts/budibase + git checkout gh-pages mv *.tgz docs helm repo index docs - git checkout gh-pages git add -A git commit -m "Helm Release: ${{ env.RELEASE_VERSION }}" git push From 9aeb2eee1a2bb249af7cb4873818b8d36740b261 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 16:21:44 +0000 Subject: [PATCH 10/40] preprod linecount --- .github/README.md | 25 +++++++++++++++++++++++++ .github/workflows/deploy-preprod.yml | 1 + .github/workflows/release-selfhost.yml | 7 ------- 3 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 .github/README.md diff --git a/.github/README.md b/.github/README.md new file mode 100644 index 0000000000..6894666e43 --- /dev/null +++ b/.github/README.md @@ -0,0 +1,25 @@ +# Budibase CI Pipelines + +Welcome to the budibase CI pipelines directory. This document details what each of the CI pipelines are for, and come common combinations. + +## All CI Pipelines + +### Standard CI Build Job (budibase_ci.yml) + +### Release Selfhost Job (release-selfhost.yml) + +### Release Develop Job (release-develop.yml) + +### Contributor License Agreement (cla.yml) + +### Cloud Deploy (deploy-cloud.yml) + +### Release Job (release.yml) + +## Common Workflows + +### Deploy Changes to Production (Hotfix, Release) + +### Rollback A Bad Deployment + +### \ No newline at end of file diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index 0105b49765..a92b2a80bd 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -35,6 +35,7 @@ jobs: -H 'Accept: application/vnd.github.v3.raw' \ -o values.preprod.yaml \ -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/budibase-preprod/values.yaml + wc -l values.production.yaml - name: Deploy to Preprod Environment uses: deliverybot/helm@v1 diff --git a/.github/workflows/release-selfhost.yml b/.github/workflows/release-selfhost.yml index 2eb2439faa..5223fc6864 100644 --- a/.github/workflows/release-selfhost.yml +++ b/.github/workflows/release-selfhost.yml @@ -56,13 +56,6 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # - name: Deploy - # uses: peaceiris/actions-gh-pages@v3 - # with: - # github_token: ${{ secrets.GITHUB_TOKEN }} - # publish_dir: ./public - # full_commit_message: "Helm Release: ${{ env.RELEASE_VERSION }}" - - name: Perform Github Release uses: softprops/action-gh-release@v1 with: From 6aeb9d8d074afb9aa49fc01f7d533b368b578661 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 16:25:51 +0000 Subject: [PATCH 11/40] wc on preprod values --- .github/workflows/deploy-preprod.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-preprod.yml b/.github/workflows/deploy-preprod.yml index a92b2a80bd..5b3282313c 100644 --- a/.github/workflows/deploy-preprod.yml +++ b/.github/workflows/deploy-preprod.yml @@ -35,7 +35,7 @@ jobs: -H 'Accept: application/vnd.github.v3.raw' \ -o values.preprod.yaml \ -L https://api.github.com/repos/budibase/budibase-infra/contents/kubernetes/budibase-preprod/values.yaml - wc -l values.production.yaml + wc -l values.preprod.yaml - name: Deploy to Preprod Environment uses: deliverybot/helm@v1 From f71432a7d2d7c52c62073ef761f0fbffd8fd709b Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 21 Dec 2021 17:44:04 +0000 Subject: [PATCH 12/40] turning back on master, adding docs for CI pipelines --- .github/README.md | 82 ++++++++++++++++++++++++++++++++--- .github/workflows/release.yml | 2 +- 2 files changed, 76 insertions(+), 8 deletions(-) diff --git a/.github/README.md b/.github/README.md index 6894666e43..d2fcd16bb0 100644 --- a/.github/README.md +++ b/.github/README.md @@ -1,25 +1,93 @@ + # Budibase CI Pipelines Welcome to the budibase CI pipelines directory. This document details what each of the CI pipelines are for, and come common combinations. ## All CI Pipelines -### Standard CI Build Job (budibase_ci.yml) +### Note +- When running workflow dispatch jobs, ensure you always run them off the `master` branch. It defaults to `develop`, so double check before running any jobs. -### Release Selfhost Job (release-selfhost.yml) +### Standard CI Build Job (budibase_ci.yml) +Triggers: +- PR or push to develop +- PR or push to master + +The standard CI Build job is what runs when you raise a PR to develop or master. +- Installs all dependencies, +- builds the project +- run the unit tests +- Generate test coverage metrics with codecov +- Run the cypress tests ### Release Develop Job (release-develop.yml) +Triggers: +- Push to develop -### Contributor License Agreement (cla.yml) +The job responsible for building, tagging and pushing docker images out to the test and staging environments. +- Installs all dependencies +- builds the project +- run the unit tests +- publish the budibase JS packages under a prerelease tag to NPM +- build, tag and push docker images under the `develop` tag to docker hub -### Cloud Deploy (deploy-cloud.yml) +These images will then be pulled by the test and staging environments, updating the latest automatically. Discord notifications are sent to the #infra channel when this occurs. ### Release Job (release.yml) +Triggers: +- Push to master + +This job is responsible for building and pushing the latest code to NPM and docker hub, so that it can be deployed. +- Installs all dependencies +- builds the project +- run the unit tests +- publish the budibase JS packages under a release tag to NPM (always incremented by patch versions) +- build, tag and push docker images under the `v.x.x.x` (the tag of the NPM release) tag to docker hub + +### Release Selfhost Job (release-selfhost.yml) +Triggers: +- Manual Workflow Dispatch Trigger + +This job is responsible for delivering the latest version of budibase to those that are self-hosting. + +This job relies on the release job to have run first, so the latest image is pushed to dockerhub. This job then will pull the latest version from `lerna.json` and try to find an image in dockerhub corresponding to that version. For example, if the version in `lerna.json` is `1.0.0`: +- Pull the images for all budibase services tagged `v1.0.0` from dockerhub +- Tag these images as `latest` +- Push them back to dockerhub. This now means anyone who pulls `latest` (self hosters using docker-compose) will get the latest version. +- Build and release the budibase helm chart for kubernetes users +- Perform a github release with the latest version. You can see previous releases here (https://github.com/Budibase/budibase/releases) + + +### Cloud Deploy (deploy-cloud.yml) +Triggers: +- Manual Workflow Dispatch Trigger + +This job is responsible for deploying to our production, cloud kubernetes environment. You must run the release job first, to ensure that the latest images have been built and pushed to docker hub. You can also manually enter a version number for this job, so you can perform rollbacks or upgrade to a specific version. After kicking off this job, the following will occur: + +- Checks out the master branch +- Pulls the latest `values.yaml` from budibase infra, a private repo containing budibases infrastructure configuration +- Gets the latest budibase version from `lerna.json`, if it hasn't been specified in the workflow when you kicked it off +- Configures AWS Credentials +- Deploys the helm chart in the budibase repo to our production EKS cluster, injecting the `values.yaml` we pulled from budibase-infra +- Fires off a discord webhook in the #infra channel to show that the deployment completely successfully. ## Common Workflows -### Deploy Changes to Production (Hotfix, Release) +### Deploy Changes to Production (Release) +- Merge `develop` into `master` +- Wait for budibase CI job and release job to run +- Run cloud deploy job +- Run release selfhost job -### Rollback A Bad Deployment +### Deploy Changes to Production (Hotfix) +- Branch off `master` +- Perform your hotfix +- Merge back into `master` +- Wait for budibase CI job and release job to run +- Run cloud deploy job +- Run release selfhost job -### \ No newline at end of file +### Rollback A Bad Cloud Deployment +- Kick off cloud deploy job +- Ensure you are running off master +- Enter the version number of the last known good version of budibase. For example `1.0.0` \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9e8dc3a0b4..71432c2403 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,7 +3,7 @@ name: Budibase Release on: push: branches: - - test + - master env: POSTHOG_TOKEN: ${{ secrets.POSTHOG_TOKEN }} From c5b066472bb933ff7f146046a389a3e6423c0c68 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 21 Dec 2021 17:51:01 +0000 Subject: [PATCH 13/40] v1.0.27 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index fff668e69f..cd50c85439 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.26", + "version": "1.0.27", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index 5a6c17e847..d5b9b55406 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.26", + "version": "1.0.27", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 2e7aea7113..468b1f8708 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.26", + "version": "1.0.27", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 4e06812dfd..9de624c922 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.26", + "version": "1.0.27", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.26", - "@budibase/client": "^1.0.26", + "@budibase/bbui": "^1.0.27", + "@budibase/client": "^1.0.27", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.26", + "@budibase/string-templates": "^1.0.27", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index e82b9c0672..a3b198439b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.26", + "version": "1.0.27", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index db44f8ea73..a7633b979e 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.26", + "version": "1.0.27", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.26", + "@budibase/bbui": "^1.0.27", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.26", + "@budibase/string-templates": "^1.0.27", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index d2b76cb3bd..06b487eb3d 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.26", + "version": "1.0.27", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.26", - "@budibase/client": "^1.0.26", - "@budibase/string-templates": "^1.0.26", + "@budibase/auth": "^1.0.27", + "@budibase/client": "^1.0.27", + "@budibase/string-templates": "^1.0.27", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index d81e207e48..0e05a7b604 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.26", + "version": "1.0.27", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 12a3c959ab..65237249a2 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.26", + "version": "1.0.27", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.26", - "@budibase/string-templates": "^1.0.26", + "@budibase/auth": "^1.0.27", + "@budibase/string-templates": "^1.0.27", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From 7551cc76a3981afe2e903dd895beffb7d0cb01fe Mon Sep 17 00:00:00 2001 From: Rory Powell Date: Wed, 29 Dec 2021 09:40:11 -0500 Subject: [PATCH 14/40] Prevent stalebot from closing issues --- .github/stale.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/stale.yml b/.github/stale.yml index 3112dfa8e7..5875ed1282 100644 --- a/.github/stale.yml +++ b/.github/stale.yml @@ -1,7 +1,9 @@ -# Number of days of inactivity before an issue becomes stale +# Configuration for probot-stale - https://github.com/probot/stale +# Number of days of inactivity before an Issue or Pull Request becomes stale daysUntilStale: 60 -# Number of days of inactivity before a stale issue is closed -daysUntilClose: 7 +# Number of days of inactivity before an Issue or Pull Request with the stale label is closed. +# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale. +daysUntilClose: false # Issues with these labels will never be considered stale exemptLabels: - pinned From b57b0f1c7b7ebbcdb596866734fe9fa1bc591775 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Wed, 29 Dec 2021 15:46:33 +0000 Subject: [PATCH 15/40] adding dynamoDB describe call to dynamo integration --- packages/server/src/integrations/dynamodb.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/packages/server/src/integrations/dynamodb.ts b/packages/server/src/integrations/dynamodb.ts index 0bc3a1273a..a3f32e5bfa 100644 --- a/packages/server/src/integrations/dynamodb.ts +++ b/packages/server/src/integrations/dynamodb.ts @@ -80,6 +80,17 @@ module DynamoModule { }, }, }, + describe: { + type: QueryTypes.FIELDS, + customisable: true, + readable: true, + fields: { + table: { + type: DatasourceFieldTypes.STRING, + required: true, + }, + }, + }, get: { type: QueryTypes.FIELDS, customisable: true, @@ -180,6 +191,13 @@ module DynamoModule { return response } + async describe(query: { table: string; }) { + const params = { + TableName: query.table, + } + return new AWS.DynamoDB().describeTable(params).promise() + } + async get(query: { table: string; json: object }) { const params = { TableName: query.table, From 3411247f500c032e409b28be00dc30f768e2290f Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 30 Dec 2021 10:00:52 +0000 Subject: [PATCH 16/40] Update CONTRIBUTING.md --- .github/CONTRIBUTING.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 7abfe537e9..adfbc29008 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -79,6 +79,8 @@ Component libraries are collections of components as well as the definition of t ### Getting Started For Contributors #### 1. Prerequisites +NodeJS Version `14.x.x` + *yarn -* `npm install -g yarn` *jest* - `npm install -g jest` From 94e7252464e0adae74d2730a9bfdeb59ef0a4c27 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Thu, 30 Dec 2021 10:06:29 +0000 Subject: [PATCH 17/40] v1.0.28 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index cd50c85439..a86ad1ed2d 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.27", + "version": "1.0.28", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index d5b9b55406..eb45f0692c 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.27", + "version": "1.0.28", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 468b1f8708..5b9f5873bc 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.27", + "version": "1.0.28", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 9de624c922..6ea66854f1 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.27", + "version": "1.0.28", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.27", - "@budibase/client": "^1.0.27", + "@budibase/bbui": "^1.0.28", + "@budibase/client": "^1.0.28", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.27", + "@budibase/string-templates": "^1.0.28", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index a3b198439b..7408717760 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.27", + "version": "1.0.28", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index a7633b979e..1d2db47645 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.27", + "version": "1.0.28", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.27", + "@budibase/bbui": "^1.0.28", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.27", + "@budibase/string-templates": "^1.0.28", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 06b487eb3d..1f392f298a 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.27", + "version": "1.0.28", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.27", - "@budibase/client": "^1.0.27", - "@budibase/string-templates": "^1.0.27", + "@budibase/auth": "^1.0.28", + "@budibase/client": "^1.0.28", + "@budibase/string-templates": "^1.0.28", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 0e05a7b604..4818666d2d 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.27", + "version": "1.0.28", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 65237249a2..79f1d7b9ae 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.27", + "version": "1.0.28", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.27", - "@budibase/string-templates": "^1.0.27", + "@budibase/auth": "^1.0.28", + "@budibase/string-templates": "^1.0.28", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From 18ad8ac1e5fc62083041a3153445995f7581e2bd Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 30 Dec 2021 17:44:27 +0000 Subject: [PATCH 18/40] configurable query timeout, s3 options for minIO, safety on cloud deploy job --- .github/workflows/deploy-cloud.yaml | 6 ++++++ packages/server/src/api/controllers/query.js | 5 ++++- packages/server/src/environment.js | 1 + packages/server/src/integrations/dynamodb.ts | 2 +- packages/server/src/integrations/oracle.ts | 2 +- packages/server/src/integrations/s3.ts | 12 ++++++++++++ 6 files changed, 25 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy-cloud.yaml b/.github/workflows/deploy-cloud.yaml index 26422a2e7b..d54e6c9c68 100644 --- a/.github/workflows/deploy-cloud.yaml +++ b/.github/workflows/deploy-cloud.yaml @@ -12,6 +12,12 @@ jobs: runs-on: ubuntu-latest steps: + - name: Fail if branch is not master + if: github.ref != 'refs/heads/master' + run: | + echo "Ref is not master, you must run this job from master." + exit 1 + - uses: actions/checkout@v2 - name: Pull values.yaml from budibase-infra diff --git a/packages/server/src/api/controllers/query.js b/packages/server/src/api/controllers/query.js index cf6f03f00f..4610fe57c3 100644 --- a/packages/server/src/api/controllers/query.js +++ b/packages/server/src/api/controllers/query.js @@ -7,8 +7,11 @@ const { } = require("../../db/utils") const { BaseQueryVerbs } = require("../../constants") const { Thread, ThreadType } = require("../../threads") +const env = require("../../environment") -const Runner = new Thread(ThreadType.QUERY, { timeoutMs: 10000 }) +const Runner = new Thread(ThreadType.QUERY, { + timeoutMs: env.QUERY_THREAD_TIMEOUT || 10000, +}) // simple function to append "readable" to all read queries function enrichQueries(input) { diff --git a/packages/server/src/environment.js b/packages/server/src/environment.js index 925fede086..a92e113851 100644 --- a/packages/server/src/environment.js +++ b/packages/server/src/environment.js @@ -65,6 +65,7 @@ module.exports = { DEPLOYMENT_CREDENTIALS_URL: process.env.DEPLOYMENT_CREDENTIALS_URL, ALLOW_DEV_AUTOMATIONS: process.env.ALLOW_DEV_AUTOMATIONS, DISABLE_THREADING: process.env.DISABLE_THREADING, + QUERY_THREAD_TIMEOUT: process.env.QUERY_THREAD_TIMEOUT, _set(key, value) { process.env[key] = value module.exports[key] = value diff --git a/packages/server/src/integrations/dynamodb.ts b/packages/server/src/integrations/dynamodb.ts index a3f32e5bfa..bfcac3184d 100644 --- a/packages/server/src/integrations/dynamodb.ts +++ b/packages/server/src/integrations/dynamodb.ts @@ -191,7 +191,7 @@ module DynamoModule { return response } - async describe(query: { table: string; }) { + async describe(query: { table: string }) { const params = { TableName: query.table, } diff --git a/packages/server/src/integrations/oracle.ts b/packages/server/src/integrations/oracle.ts index afaa902655..f602a97591 100644 --- a/packages/server/src/integrations/oracle.ts +++ b/packages/server/src/integrations/oracle.ts @@ -450,7 +450,7 @@ module OracleModule { }) return lastRow.rows } else { - return [{ [ operation.toLowerCase() ]: true }] + return [{ [operation.toLowerCase()]: true }] } } } diff --git a/packages/server/src/integrations/s3.ts b/packages/server/src/integrations/s3.ts index bcbcdf342a..b258670ee3 100644 --- a/packages/server/src/integrations/s3.ts +++ b/packages/server/src/integrations/s3.ts @@ -29,6 +29,18 @@ module S3Module { type: "password", required: true, }, + endpoint: { + type: "string", + required: false, + }, + s3ForcePathStyle: { + type: "boolean", + required: false, + }, + signatureVersion: { + type: "string", + required: false, + }, }, query: { read: { From a5ea356d4a5ad20133d5b6f5fd7202e4432d1777 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 30 Dec 2021 18:00:29 +0000 Subject: [PATCH 19/40] upgrading nginx ingress controller helm chart --- charts/budibase/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/budibase/Chart.yaml b/charts/budibase/Chart.yaml index cc7119f57d..e909f2803d 100644 --- a/charts/budibase/Chart.yaml +++ b/charts/budibase/Chart.yaml @@ -19,6 +19,6 @@ dependencies: repository: https://apache.github.io/couchdb-helm condition: services.couchdb.enabled - name: ingress-nginx - version: 3.35.0 + version: 4.0.13 repository: https://github.com/kubernetes/ingress-nginx condition: ingress.nginx From 2848e48f52fe6fdf4f4c264a4dc69932db90d520 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Thu, 30 Dec 2021 18:07:14 +0000 Subject: [PATCH 20/40] v1.0.29 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index a86ad1ed2d..ea42386809 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.28", + "version": "1.0.29", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index eb45f0692c..7590977cb6 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.28", + "version": "1.0.29", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 5b9f5873bc..5c43cc8cb4 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.28", + "version": "1.0.29", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 6ea66854f1..43aae7e32b 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.28", + "version": "1.0.29", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.28", - "@budibase/client": "^1.0.28", + "@budibase/bbui": "^1.0.29", + "@budibase/client": "^1.0.29", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.28", + "@budibase/string-templates": "^1.0.29", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 7408717760..7b08d4b601 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.28", + "version": "1.0.29", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 1d2db47645..fd607cc35b 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.28", + "version": "1.0.29", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.28", + "@budibase/bbui": "^1.0.29", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.28", + "@budibase/string-templates": "^1.0.29", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 1f392f298a..9c18496e17 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.28", + "version": "1.0.29", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.28", - "@budibase/client": "^1.0.28", - "@budibase/string-templates": "^1.0.28", + "@budibase/auth": "^1.0.29", + "@budibase/client": "^1.0.29", + "@budibase/string-templates": "^1.0.29", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 4818666d2d..899e165565 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.28", + "version": "1.0.29", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 79f1d7b9ae..759426fbb0 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.28", + "version": "1.0.29", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.28", - "@budibase/string-templates": "^1.0.28", + "@budibase/auth": "^1.0.29", + "@budibase/string-templates": "^1.0.29", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From f723e5f681fcd363968f7d30b9f6642af4d3e35e Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 30 Dec 2021 18:57:23 +0000 Subject: [PATCH 21/40] locking chart deps, upgrading NGINX chart to point to new helm repo --- charts/budibase/Chart.lock | 9 +++++++++ charts/budibase/Chart.yaml | 2 +- charts/budibase/charts/ingress-nginx-3.35.0.tgz | Bin 25050 -> 0 bytes charts/budibase/charts/ingress-nginx-4.0.13.tgz | Bin 0 -> 27766 bytes 4 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 charts/budibase/Chart.lock delete mode 100644 charts/budibase/charts/ingress-nginx-3.35.0.tgz create mode 100644 charts/budibase/charts/ingress-nginx-4.0.13.tgz diff --git a/charts/budibase/Chart.lock b/charts/budibase/Chart.lock new file mode 100644 index 0000000000..75b9de07b5 --- /dev/null +++ b/charts/budibase/Chart.lock @@ -0,0 +1,9 @@ +dependencies: +- name: couchdb + repository: https://apache.github.io/couchdb-helm + version: 3.3.4 +- name: ingress-nginx + repository: https://kubernetes.github.io/ingress-nginx + version: 4.0.13 +digest: sha256:20892705c2d8e64c98257d181063a514ac55013e2b43399a6e54868a97f97845 +generated: "2021-12-30T18:55:30.878411Z" diff --git a/charts/budibase/Chart.yaml b/charts/budibase/Chart.yaml index e909f2803d..8c9d44f201 100644 --- a/charts/budibase/Chart.yaml +++ b/charts/budibase/Chart.yaml @@ -20,5 +20,5 @@ dependencies: condition: services.couchdb.enabled - name: ingress-nginx version: 4.0.13 - repository: https://github.com/kubernetes/ingress-nginx + repository: https://kubernetes.github.io/ingress-nginx condition: ingress.nginx diff --git a/charts/budibase/charts/ingress-nginx-3.35.0.tgz b/charts/budibase/charts/ingress-nginx-3.35.0.tgz deleted file mode 100644 index ee5214c49785e6a639ea9fb34d27b37d915c04c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25050 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
YxVZ#WWb-4%f~e&bVB!O)nr^(lHINBx~p5cj~O! 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 B#CHGy diff --git a/charts/budibase/charts/ingress-nginx-4.0.13.tgz b/charts/budibase/charts/ingress-nginx-4.0.13.tgz new file mode 100644 index 0000000000000000000000000000000000000000..1e34215c5f8a8f4b22a49cce13ac086d6b80a25b GIT binary patch literal 27766 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 K0YMK1@&5p2<=4Le literal 0 HcmV?d00001 From 2a3eb5eed9af1a6a662c9ec4b29c01cb5a5ea49f Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Thu, 30 Dec 2021 19:05:38 +0000 Subject: [PATCH 22/40] v1.0.30 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index ea42386809..c937239de0 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.29", + "version": "1.0.30", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index 7590977cb6..688a839555 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.29", + "version": "1.0.30", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 5c43cc8cb4..cad4db6aac 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.29", + "version": "1.0.30", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 43aae7e32b..6938c724f0 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.29", + "version": "1.0.30", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.29", - "@budibase/client": "^1.0.29", + "@budibase/bbui": "^1.0.30", + "@budibase/client": "^1.0.30", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.29", + "@budibase/string-templates": "^1.0.30", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 7b08d4b601..5d9b82f511 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.29", + "version": "1.0.30", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index fd607cc35b..20b15c79bc 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.29", + "version": "1.0.30", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.29", + "@budibase/bbui": "^1.0.30", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.29", + "@budibase/string-templates": "^1.0.30", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 9c18496e17..b5cd4aef87 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.29", + "version": "1.0.30", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.29", - "@budibase/client": "^1.0.29", - "@budibase/string-templates": "^1.0.29", + "@budibase/auth": "^1.0.30", + "@budibase/client": "^1.0.30", + "@budibase/string-templates": "^1.0.30", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 899e165565..a021f5c52c 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.29", + "version": "1.0.30", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 759426fbb0..40b74509b2 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.29", + "version": "1.0.30", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.29", - "@budibase/string-templates": "^1.0.29", + "@budibase/auth": "^1.0.30", + "@budibase/string-templates": "^1.0.30", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From 150fc3b11db01de6b24101ae36b2aa7163677bf6 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 31 Dec 2021 08:29:48 +0000 Subject: [PATCH 23/40] v1.0.31 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index c937239de0..6e47c9a14b 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.30", + "version": "1.0.31", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index 688a839555..1d5bdbea58 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.30", + "version": "1.0.31", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index cad4db6aac..e88bd924f0 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.30", + "version": "1.0.31", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 6938c724f0..9012014f7c 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.30", + "version": "1.0.31", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.30", - "@budibase/client": "^1.0.30", + "@budibase/bbui": "^1.0.31", + "@budibase/client": "^1.0.31", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.30", + "@budibase/string-templates": "^1.0.31", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 5d9b82f511..e394df2a81 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.30", + "version": "1.0.31", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 20b15c79bc..36bf71ed22 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.30", + "version": "1.0.31", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.30", + "@budibase/bbui": "^1.0.31", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.30", + "@budibase/string-templates": "^1.0.31", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index b5cd4aef87..8d7f2c8dea 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.30", + "version": "1.0.31", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.30", - "@budibase/client": "^1.0.30", - "@budibase/string-templates": "^1.0.30", + "@budibase/auth": "^1.0.31", + "@budibase/client": "^1.0.31", + "@budibase/string-templates": "^1.0.31", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index a021f5c52c..ce08344732 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.30", + "version": "1.0.31", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 40b74509b2..8ca0f63a47 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.30", + "version": "1.0.31", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.30", - "@budibase/string-templates": "^1.0.30", + "@budibase/auth": "^1.0.31", + "@budibase/string-templates": "^1.0.31", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From 4d773536926e3b552d36b548636ee53bfe031a08 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Fri, 31 Dec 2021 13:28:52 +0000 Subject: [PATCH 24/40] adding minio URL to objectStoreUrl check --- packages/server/src/utilities/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/src/utilities/index.js b/packages/server/src/utilities/index.js index eacf9708e2..bc0a67105b 100644 --- a/packages/server/src/utilities/index.js +++ b/packages/server/src/utilities/index.js @@ -34,7 +34,7 @@ exports.checkSlashesInUrl = url => { * @return {string} The base URL of the object store (MinIO or S3). */ exports.objectStoreUrl = () => { - if (env.SELF_HOSTED) { + if (env.SELF_HOSTED || env.MINIO_URL) { // can use a relative url for this as all goes through the proxy (this is hosted in minio) return OBJ_STORE_DIRECTORY } else { From 178b1201e6d4e53fd270105a06001047ea92cab5 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 31 Dec 2021 13:35:29 +0000 Subject: [PATCH 25/40] v1.0.32 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index 6e47c9a14b..d0dec72bf6 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.31", + "version": "1.0.32", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index 1d5bdbea58..d21e071c59 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.31", + "version": "1.0.32", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index e88bd924f0..bb6b5f7ed2 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.31", + "version": "1.0.32", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 9012014f7c..07307aa3ef 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.31", + "version": "1.0.32", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.31", - "@budibase/client": "^1.0.31", + "@budibase/bbui": "^1.0.32", + "@budibase/client": "^1.0.32", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.31", + "@budibase/string-templates": "^1.0.32", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index e394df2a81..8992377235 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.31", + "version": "1.0.32", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 36bf71ed22..a7ae182e11 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.31", + "version": "1.0.32", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.31", + "@budibase/bbui": "^1.0.32", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.31", + "@budibase/string-templates": "^1.0.32", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 8d7f2c8dea..825ad45b48 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.31", + "version": "1.0.32", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.31", - "@budibase/client": "^1.0.31", - "@budibase/string-templates": "^1.0.31", + "@budibase/auth": "^1.0.32", + "@budibase/client": "^1.0.32", + "@budibase/string-templates": "^1.0.32", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index ce08344732..ea822e7c42 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.31", + "version": "1.0.32", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 8ca0f63a47..4639b6fad7 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.31", + "version": "1.0.32", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.31", - "@budibase/string-templates": "^1.0.31", + "@budibase/auth": "^1.0.32", + "@budibase/string-templates": "^1.0.32", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From ac67b11301946ab59a45872b23017b5bca4e6db8 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Fri, 31 Dec 2021 13:59:48 +0000 Subject: [PATCH 26/40] only kick off build on certain paths --- .github/workflows/release-develop.yml | 10 ++++++++++ .github/workflows/release.yml | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/.github/workflows/release-develop.yml b/.github/workflows/release-develop.yml index b0f052f68f..4467cd6c81 100644 --- a/.github/workflows/release-develop.yml +++ b/.github/workflows/release-develop.yml @@ -4,6 +4,16 @@ on: push: branches: - develop + paths: + - '.aws/**' + - '.github/**' + - 'charts/**' + - 'packages/**' + - 'scripts/**' + - 'package.json' + - 'yarn.lock' + - 'package.json' + - 'yarn.lock' env: POSTHOG_TOKEN: ${{ secrets.POSTHOG_TOKEN }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 71432c2403..82848c78e4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,6 +4,16 @@ on: push: branches: - master + paths: + - '.aws/**' + - '.github/**' + - 'charts/**' + - 'packages/**' + - 'scripts/**' + - 'package.json' + - 'yarn.lock' + - 'package.json' + - 'yarn.lock' env: POSTHOG_TOKEN: ${{ secrets.POSTHOG_TOKEN }} From b6f43bb6c3e3586d1145c415514edd4a7fe50f38 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Fri, 31 Dec 2021 14:05:16 +0000 Subject: [PATCH 27/40] making proxy service use ClusterIP instead of NodePort --- charts/budibase/templates/proxy-service-service.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/charts/budibase/templates/proxy-service-service.yaml b/charts/budibase/templates/proxy-service-service.yaml index 8f14d97862..bf2b199ee5 100644 --- a/charts/budibase/templates/proxy-service-service.yaml +++ b/charts/budibase/templates/proxy-service-service.yaml @@ -9,12 +9,11 @@ metadata: app.kubernetes.io/name: budibase-proxy name: proxy-service spec: - type: NodePort ports: - - port: {{ .Values.services.proxy.port }} + - name: {{ .Values.services.proxy.port | quote }} + port: {{ .Values.services.proxy.port }} targetPort: {{ .Values.services.proxy.port }} - protocol: TCP selector: app.kubernetes.io/name: budibase-proxy status: - loadBalancer: {} + loadBalancer: {} \ No newline at end of file From a1f947588924b195725b6d328d51c80a4af1c33e Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Fri, 31 Dec 2021 15:33:19 +0000 Subject: [PATCH 28/40] v1.0.33 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index d0dec72bf6..33b8d9385e 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.32", + "version": "1.0.33", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index d21e071c59..9633753c7a 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.32", + "version": "1.0.33", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index bb6b5f7ed2..65891f77e1 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.32", + "version": "1.0.33", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 07307aa3ef..cd52fee5cb 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.32", + "version": "1.0.33", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.32", - "@budibase/client": "^1.0.32", + "@budibase/bbui": "^1.0.33", + "@budibase/client": "^1.0.33", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.32", + "@budibase/string-templates": "^1.0.33", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 8992377235..8eb9405ef2 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.32", + "version": "1.0.33", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index a7ae182e11..c3ba32350f 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.32", + "version": "1.0.33", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.32", + "@budibase/bbui": "^1.0.33", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.32", + "@budibase/string-templates": "^1.0.33", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 825ad45b48..18b13b1756 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.32", + "version": "1.0.33", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.32", - "@budibase/client": "^1.0.32", - "@budibase/string-templates": "^1.0.32", + "@budibase/auth": "^1.0.33", + "@budibase/client": "^1.0.33", + "@budibase/string-templates": "^1.0.33", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index ea822e7c42..d2546c81cf 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.32", + "version": "1.0.33", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 4639b6fad7..d3bbc3d6f2 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.32", + "version": "1.0.33", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.32", - "@budibase/string-templates": "^1.0.32", + "@budibase/auth": "^1.0.33", + "@budibase/string-templates": "^1.0.33", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From e87a348fb885b2851223e16404664bd10e6c657e Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Fri, 31 Dec 2021 16:15:49 +0000 Subject: [PATCH 29/40] enabling minio support for S3 connector --- packages/server/src/integrations/s3.ts | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/packages/server/src/integrations/s3.ts b/packages/server/src/integrations/s3.ts index b258670ee3..25b439fd58 100644 --- a/packages/server/src/integrations/s3.ts +++ b/packages/server/src/integrations/s3.ts @@ -8,6 +8,8 @@ module S3Module { region: string accessKeyId: string secretAccessKey: string + s3ForcePathStyle: boolean + endpoint?: string } const SCHEMA: Integration = { @@ -18,7 +20,7 @@ module S3Module { datasource: { region: { type: "string", - required: true, + required: false, default: "us-east-1", }, accessKeyId: { @@ -33,13 +35,10 @@ module S3Module { type: "string", required: false, }, - s3ForcePathStyle: { - type: "boolean", - required: false, - }, signatureVersion: { type: "string", required: false, + default: "v4" }, }, query: { @@ -58,16 +57,16 @@ module S3Module { class S3Integration implements IntegrationBase { private readonly config: S3Config private client: any - private connectionPromise: Promise constructor(config: S3Config) { this.config = config - this.connectionPromise = this.connect() - this.client = new AWS.S3() - } + if (this.config.endpoint) { + this.config.s3ForcePathStyle = true + } else { + delete this.config.endpoint + } - async connect() { - AWS.config.update(this.config) + this.client = new AWS.S3(this.config) } async read(query: { bucket: string }) { From 20550543f75e2518c379e10d2b46499690818aa4 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Tue, 4 Jan 2022 12:48:58 +0000 Subject: [PATCH 30/40] v1.0.34 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index 33b8d9385e..4a1cc8ebbb 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.33", + "version": "1.0.34", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index 9633753c7a..ee71a0fd39 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.33", + "version": "1.0.34", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 65891f77e1..43f4c06519 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.33", + "version": "1.0.34", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index cd52fee5cb..7b4380a30e 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.33", + "version": "1.0.34", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.33", - "@budibase/client": "^1.0.33", + "@budibase/bbui": "^1.0.34", + "@budibase/client": "^1.0.34", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.33", + "@budibase/string-templates": "^1.0.34", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 8eb9405ef2..7e2215cf4a 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.33", + "version": "1.0.34", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index c3ba32350f..335732f489 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.33", + "version": "1.0.34", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.33", + "@budibase/bbui": "^1.0.34", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.33", + "@budibase/string-templates": "^1.0.34", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 18b13b1756..0169eb1d56 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.33", + "version": "1.0.34", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.33", - "@budibase/client": "^1.0.33", - "@budibase/string-templates": "^1.0.33", + "@budibase/auth": "^1.0.34", + "@budibase/client": "^1.0.34", + "@budibase/string-templates": "^1.0.34", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index d2546c81cf..31e93caa08 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.33", + "version": "1.0.34", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index d3bbc3d6f2..7eb3a61ca8 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.33", + "version": "1.0.34", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.33", - "@budibase/string-templates": "^1.0.33", + "@budibase/auth": "^1.0.34", + "@budibase/string-templates": "^1.0.34", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From 45d82141cada39e47f21858d099e542e2d835fc2 Mon Sep 17 00:00:00 2001 From: Rory Powell Date: Tue, 4 Jan 2022 10:48:48 -0500 Subject: [PATCH 31/40] Consolidate CI docs in CONTRIBUTING.md --- .github/CONTRIBUTING.md | 31 +------------------------------ .github/{ => workflows}/README.md | 0 2 files changed, 1 insertion(+), 30 deletions(-) rename .github/{ => workflows}/README.md (100%) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index adfbc29008..d1e373003a 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -179,36 +179,7 @@ To enable this mode, use: yarn mode:account ``` ### CI - -#### PR Job - -After your pr is submitted a github action (can be found at `.github/workflows/budibase_ci.yml`) will run to perform some checks against the changes such as linting, build and test. - -The job will run when changes are pushed to or targetted at `master` and `develop` -#### Release Develop - -To test changes before a release, a prerelease action (can be found at `.github/workflows/release-develop.yml`) will run to build and release develop versions of npm packages and docker images. On each subsequent commit to develop a new alpha version of npm packages will be created and released. - -For example: - -- `feature1` -> `develop` = `v0.9.160-alpha.1` -- `feature2` -> `develop` = `v0.9.160-alpha.0` - -The job will run when changes are pushed to `develop` -#### Release Job - -To release changes a release job (can be found at `.github/workflows/release.yml`) will run to create final versions of npm packages and docker images. - -Following the example above: - -- `develop` -> `master` = `v0.9.160` - -The job will run when changes are pushed to `master` - -#### Release Self Host Job - -To release the self hosted version of docker images, an additional job (can be found at `.github/workflows/release-selfhost.yml`) must be ran manually. This will releaae docker images to docker hub under the tag `latest` to be picked up by self hosted installations. - + An overview of the CI pipelines can be found [here](./workflows/README.md) ### Troubleshooting Sometimes, things go wrong. This can be due to incompatible updates on the budibase platform. To clear down your development environment and start again follow **Step 6. Cleanup**, then proceed from **Step 3. Install and Build** in the setup guide above. You should have a fresh Budibase installation. diff --git a/.github/README.md b/.github/workflows/README.md similarity index 100% rename from .github/README.md rename to .github/workflows/README.md From 157877a60444104d17efedf937bc7d48fc3006c5 Mon Sep 17 00:00:00 2001 From: Budibase Release Bot <> Date: Thu, 6 Jan 2022 08:28:55 +0000 Subject: [PATCH 32/40] v1.0.35 --- lerna.json | 2 +- packages/auth/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index 4a1cc8ebbb..f3056d4dc5 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.34", + "version": "1.0.35", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/auth/package.json b/packages/auth/package.json index ee71a0fd39..24c6de2f78 100644 --- a/packages/auth/package.json +++ b/packages/auth/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/auth", - "version": "1.0.34", + "version": "1.0.35", "description": "Authentication middlewares for budibase builder and apps", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 43f4c06519..7300bebb2a 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.34", + "version": "1.0.35", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 7b4380a30e..54d3a22aa9 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.34", + "version": "1.0.35", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.34", - "@budibase/client": "^1.0.34", + "@budibase/bbui": "^1.0.35", + "@budibase/client": "^1.0.35", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.34", + "@budibase/string-templates": "^1.0.35", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 7e2215cf4a..29aa931d87 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.34", + "version": "1.0.35", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 335732f489..6dbffb943a 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.34", + "version": "1.0.35", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.34", + "@budibase/bbui": "^1.0.35", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.34", + "@budibase/string-templates": "^1.0.35", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 0169eb1d56..4a0651da58 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.34", + "version": "1.0.35", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -69,9 +69,9 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.34", - "@budibase/client": "^1.0.34", - "@budibase/string-templates": "^1.0.34", + "@budibase/auth": "^1.0.35", + "@budibase/client": "^1.0.35", + "@budibase/string-templates": "^1.0.35", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 31e93caa08..6bf816633a 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.34", + "version": "1.0.35", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 7eb3a61ca8..627016d10b 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.34", + "version": "1.0.35", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/auth": "^1.0.34", - "@budibase/string-templates": "^1.0.34", + "@budibase/auth": "^1.0.35", + "@budibase/string-templates": "^1.0.35", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From 40111491c42ce81d30be64ee45cb243450572835 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 13 Jan 2022 15:10:55 +0100 Subject: [PATCH 33/40] remove old query file --- packages/server/src/api/controllers/query.js | 161 ------------------- 1 file changed, 161 deletions(-) delete mode 100644 packages/server/src/api/controllers/query.js diff --git a/packages/server/src/api/controllers/query.js b/packages/server/src/api/controllers/query.js deleted file mode 100644 index 4610fe57c3..0000000000 --- a/packages/server/src/api/controllers/query.js +++ /dev/null @@ -1,161 +0,0 @@ -const { processString } = require("@budibase/string-templates") -const CouchDB = require("../../db") -const { - generateQueryID, - getQueryParams, - isProdAppID, -} = require("../../db/utils") -const { BaseQueryVerbs } = require("../../constants") -const { Thread, ThreadType } = require("../../threads") -const env = require("../../environment") - -const Runner = new Thread(ThreadType.QUERY, { - timeoutMs: env.QUERY_THREAD_TIMEOUT || 10000, -}) - -// simple function to append "readable" to all read queries -function enrichQueries(input) { - const wasArray = Array.isArray(input) - const queries = wasArray ? input : [input] - for (let query of queries) { - if (query.queryVerb === BaseQueryVerbs.READ) { - query.readable = true - } - } - return wasArray ? queries : queries[0] -} - -exports.fetch = async function (ctx) { - const db = new CouchDB(ctx.appId) - - const body = await db.allDocs( - getQueryParams(null, { - include_docs: true, - }) - ) - ctx.body = enrichQueries(body.rows.map(row => row.doc)) -} - -exports.save = async function (ctx) { - const db = new CouchDB(ctx.appId) - const query = ctx.request.body - - if (!query._id) { - query._id = generateQueryID(query.datasourceId) - } - - const response = await db.put(query) - query._rev = response.rev - - ctx.body = query - ctx.message = `Query ${query.name} saved successfully.` -} - -async function enrichQueryFields(fields, parameters = {}) { - const enrichedQuery = {} - - // enrich the fields with dynamic parameters - for (let key of Object.keys(fields)) { - if (fields[key] == null) { - continue - } - if (typeof fields[key] === "object") { - // enrich nested fields object - enrichedQuery[key] = await enrichQueryFields(fields[key], parameters) - } else if (typeof fields[key] === "string") { - // enrich string value as normal - enrichedQuery[key] = await processString(fields[key], parameters, { - noHelpers: true, - }) - } else { - enrichedQuery[key] = fields[key] - } - } - - if ( - enrichedQuery.json || - enrichedQuery.customData || - enrichedQuery.requestBody - ) { - try { - enrichedQuery.json = JSON.parse( - enrichedQuery.json || - enrichedQuery.customData || - enrichedQuery.requestBody - ) - } catch (err) { - throw { message: `JSON Invalid - error: ${err}` } - } - delete enrichedQuery.customData - } - - return enrichedQuery -} - -exports.find = async function (ctx) { - const db = new CouchDB(ctx.appId) - const query = enrichQueries(await db.get(ctx.params.queryId)) - // remove properties that could be dangerous in real app - if (isProdAppID(ctx.appId)) { - delete query.fields - delete query.parameters - } - ctx.body = query -} - -exports.preview = async function (ctx) { - const db = new CouchDB(ctx.appId) - - const datasource = await db.get(ctx.request.body.datasourceId) - - const { fields, parameters, queryVerb, transformer } = ctx.request.body - const enrichedQuery = await enrichQueryFields(fields, parameters) - - try { - const { rows, keys } = await Runner.run({ - datasource, - queryVerb, - query: enrichedQuery, - transformer, - }) - - ctx.body = { - rows, - schemaFields: [...new Set(keys)], - } - } catch (err) { - ctx.throw(400, err) - } -} - -exports.execute = async function (ctx) { - const db = new CouchDB(ctx.appId) - - const query = await db.get(ctx.params.queryId) - const datasource = await db.get(query.datasourceId) - - const enrichedQuery = await enrichQueryFields( - query.fields, - ctx.request.body.parameters - ) - - // call the relevant CRUD method on the integration class - try { - const { rows } = await Runner.run({ - datasource, - queryVerb: query.queryVerb, - query: enrichedQuery, - transformer: query.transformer, - }) - ctx.body = rows - } catch (err) { - ctx.throw(400, err) - } -} - -exports.destroy = async function (ctx) { - const db = new CouchDB(ctx.appId) - await db.remove(ctx.params.queryId, ctx.params.revId) - ctx.message = `Query deleted.` - ctx.status = 200 -} From d8cb48a1a7ad2f7aacb2d131a568b9e00f3e8573 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 13 Jan 2022 15:17:58 +0100 Subject: [PATCH 34/40] use selfhost job definition from master --- .github/workflows/release-selfhost.yml | 49 ++++---------------------- 1 file changed, 7 insertions(+), 42 deletions(-) diff --git a/.github/workflows/release-selfhost.yml b/.github/workflows/release-selfhost.yml index add82fb0d1..5223fc6864 100644 --- a/.github/workflows/release-selfhost.yml +++ b/.github/workflows/release-selfhost.yml @@ -9,13 +9,11 @@ jobs: steps: - uses: actions/checkout@v2 - - - uses: actions/setup-node@v1 - with: - node-version: 14.x + with: + fetch_depth: 0 - name: Tag and release Docker images (Self Host) - run: | + run: | docker login -u $DOCKER_USER -p $DOCKER_PASSWORD # Get latest release version @@ -30,7 +28,7 @@ jobs: # Tag apps and worker images docker tag budibase/apps:$release_tag budibase/apps:$SELFHOST_TAG docker tag budibase/worker:$release_tag budibase/worker:$SELFHOST_TAG - + # Push images docker push budibase/apps:$SELFHOST_TAG docker push budibase/worker:$SELFHOST_TAG @@ -38,39 +36,11 @@ jobs: DOCKER_USER: ${{ secrets.DOCKER_USERNAME }} DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} SELFHOST_TAG: latest - - - name: Setup Helm + + - name: Setup Helm uses: azure/setup-helm@v1 id: helm-install -<<<<<<< HEAD - - name: Build CLI executables - run: | - pushd packages/cli - yarn - yarn build - popd - - # - name: Build and release helm chart - # run: | - # git config user.name "Budibase Helm Bot" - # git config user.email "<>" - # mv budibase-${{ env.RELEASE_VERSION }}.tgz docs - # helm repo index docs - # git checkout gh-pages - # git add -A - # git commit -m "Helm Release: ${{ env.RELEASE_VERSION }}" - # git push - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - # - name: Deploy - # uses: peaceiris/actions-gh-pages@v3 - # with: - # github_token: ${{ secrets.GITHUB_TOKEN }} - # publish_dir: ./public - # full_commit_message: "Helm Release: ${{ env.RELEASE_VERSION }}" -======= - name: Build and release helm chart run: | git config user.name "Budibase Helm Bot" @@ -85,15 +55,10 @@ jobs: git push env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} ->>>>>>> 157877a60444104d17efedf937bc7d48fc3006c5 - name: Perform Github Release uses: softprops/action-gh-release@v1 with: name: v${{ env.RELEASE_VERSION }} tag_name: v${{ env.RELEASE_VERSION }} - generate_release_notes: true - files: | - packages/cli/build/cli-win.exe - packages/cli/build/cli-linux - packages/cli/build/cli-macos \ No newline at end of file + generate_release_notes: true \ No newline at end of file From 05c84628c1e5129bac03cd10712ad45ea7d2599a Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 13 Jan 2022 14:18:24 +0000 Subject: [PATCH 35/40] v1.0.27-alpha.14 --- lerna.json | 2 +- packages/backend-core/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index e492e58a75..4a30228ef2 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index c358c7f9d4..58348f12b0 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "description": "Budibase backend core libraries used in server and worker", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 941127eb92..7d8617cc4c 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 8b03c66b74..71641c5aca 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.13", - "@budibase/client": "^1.0.27-alpha.13", + "@budibase/bbui": "^1.0.27-alpha.14", + "@budibase/client": "^1.0.27-alpha.14", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.27-alpha.13", + "@budibase/string-templates": "^1.0.27-alpha.14", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index f485df8acb..92d047ee40 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index c0047da8ef..f42d272c99 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.13", + "@budibase/bbui": "^1.0.27-alpha.14", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.27-alpha.13", + "@budibase/string-templates": "^1.0.27-alpha.14", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index a958e175a6..045cfb8872 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -70,9 +70,9 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "^10.0.3", - "@budibase/backend-core": "^1.0.27-alpha.13", - "@budibase/client": "^1.0.27-alpha.13", - "@budibase/string-templates": "^1.0.27-alpha.13", + "@budibase/backend-core": "^1.0.27-alpha.14", + "@budibase/client": "^1.0.27-alpha.14", + "@budibase/string-templates": "^1.0.27-alpha.14", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index da61e06da9..4d91d41f86 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index aff597b925..39c2c52ea2 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.27-alpha.13", + "version": "1.0.27-alpha.14", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.0.27-alpha.13", - "@budibase/string-templates": "^1.0.27-alpha.13", + "@budibase/backend-core": "^1.0.27-alpha.14", + "@budibase/string-templates": "^1.0.27-alpha.14", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From e8815720a0c38f490323e7cfa9f22f6f6b91152d Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 13 Jan 2022 14:26:35 +0000 Subject: [PATCH 36/40] v1.0.27-alpha.15 --- lerna.json | 2 +- packages/backend-core/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index 4a30228ef2..c6b6ac7330 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 58348f12b0..dcbccb109b 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "description": "Budibase backend core libraries used in server and worker", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 7d8617cc4c..547fc850ae 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 71641c5aca..4ca9b3074d 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.14", - "@budibase/client": "^1.0.27-alpha.14", + "@budibase/bbui": "^1.0.27-alpha.15", + "@budibase/client": "^1.0.27-alpha.15", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.27-alpha.14", + "@budibase/string-templates": "^1.0.27-alpha.15", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 92d047ee40..32b50a3c77 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index f42d272c99..8fd4ed6964 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.14", + "@budibase/bbui": "^1.0.27-alpha.15", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.27-alpha.14", + "@budibase/string-templates": "^1.0.27-alpha.15", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 045cfb8872..7a56418dde 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -70,9 +70,9 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "^10.0.3", - "@budibase/backend-core": "^1.0.27-alpha.14", - "@budibase/client": "^1.0.27-alpha.14", - "@budibase/string-templates": "^1.0.27-alpha.14", + "@budibase/backend-core": "^1.0.27-alpha.15", + "@budibase/client": "^1.0.27-alpha.15", + "@budibase/string-templates": "^1.0.27-alpha.15", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 4d91d41f86..441aa536ad 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 39c2c52ea2..a03c5503cd 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.27-alpha.14", + "version": "1.0.27-alpha.15", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.0.27-alpha.14", - "@budibase/string-templates": "^1.0.27-alpha.14", + "@budibase/backend-core": "^1.0.27-alpha.15", + "@budibase/string-templates": "^1.0.27-alpha.15", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From 82fd3e1fd07b5405fd5666684aa14543f888c672 Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Thu, 13 Jan 2022 15:31:17 +0100 Subject: [PATCH 37/40] re-add cli executable --- .github/workflows/release-selfhost.yml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-selfhost.yml b/.github/workflows/release-selfhost.yml index 5223fc6864..e842da9d7c 100644 --- a/.github/workflows/release-selfhost.yml +++ b/.github/workflows/release-selfhost.yml @@ -10,6 +10,7 @@ jobs: steps: - uses: actions/checkout@v2 with: + node-version: 14.x fetch_depth: 0 - name: Tag and release Docker images (Self Host) @@ -37,6 +38,13 @@ jobs: DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} SELFHOST_TAG: latest + - name: Build CLI executables + run: | + pushd packages/cli + yarn + yarn build + popd + - name: Setup Helm uses: azure/setup-helm@v1 id: helm-install @@ -61,4 +69,8 @@ jobs: with: name: v${{ env.RELEASE_VERSION }} tag_name: v${{ env.RELEASE_VERSION }} - generate_release_notes: true \ No newline at end of file + generate_release_notes: true + files: | + packages/cli/build/cli-win.exe + packages/cli/build/cli-linux + packages/cli/build/cli-macos \ No newline at end of file From 3f8af725d16675ccf6824e2812138d3ef7471ec7 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Thu, 13 Jan 2022 14:36:47 +0000 Subject: [PATCH 38/40] Fixing issue #4010 - options and boolean types can be maintained. --- packages/server/src/integrations/rest.ts | 37 +++++++++++++++++------ packages/server/src/integrations/utils.ts | 15 ++++----- 2 files changed, 36 insertions(+), 16 deletions(-) diff --git a/packages/server/src/integrations/rest.ts b/packages/server/src/integrations/rest.ts index 3199ce3bde..ea40dfb609 100644 --- a/packages/server/src/integrations/rest.ts +++ b/packages/server/src/integrations/rest.ts @@ -43,8 +43,8 @@ const coreFields = { enum: Object.values(BodyTypes), }, pagination: { - type: DatasourceFieldTypes.OBJECT - } + type: DatasourceFieldTypes.OBJECT, + }, } module RestModule { @@ -178,12 +178,17 @@ module RestModule { headers, }, pagination: { - cursor: nextCursor - } + cursor: nextCursor, + }, } } - getUrl(path: string, queryString: string, pagination: PaginationConfig | null, paginationValues: PaginationValues | null): string { + getUrl( + path: string, + queryString: string, + pagination: PaginationConfig | null, + paginationValues: PaginationValues | null + ): string { // Add pagination params to query string if required if (pagination?.location === "query" && paginationValues) { const { pageParam, sizeParam } = pagination @@ -217,14 +222,22 @@ module RestModule { return complete } - addBody(bodyType: string, body: string | any, input: any, pagination: PaginationConfig | null, paginationValues: PaginationValues | null) { + addBody( + bodyType: string, + body: string | any, + input: any, + pagination: PaginationConfig | null, + paginationValues: PaginationValues | null + ) { if (!input.headers) { input.headers = {} } if (bodyType === BodyTypes.NONE) { return input } - let error, object: any = {}, string = "" + let error, + object: any = {}, + string = "" try { if (body) { string = typeof body !== "string" ? JSON.stringify(body) : body @@ -333,7 +346,7 @@ module RestModule { requestBody, authConfigId, pagination, - paginationValues + paginationValues, } = query const authHeaders = this.getAuthHeaders(authConfigId) @@ -352,7 +365,13 @@ module RestModule { } let input: any = { method, headers: this.headers } - input = this.addBody(bodyType, requestBody, input, pagination, paginationValues) + input = this.addBody( + bodyType, + requestBody, + input, + pagination, + paginationValues + ) this.startTimeMs = performance.now() const url = this.getUrl(path, queryString, pagination, paginationValues) diff --git a/packages/server/src/integrations/utils.ts b/packages/server/src/integrations/utils.ts index 97380b1b5b..b1e42a51b3 100644 --- a/packages/server/src/integrations/utils.ts +++ b/packages/server/src/integrations/utils.ts @@ -1,12 +1,8 @@ import { SqlQuery } from "../definitions/datasource" import { Datasource, Table } from "../definitions/common" import { SourceNames } from "../definitions/datasource" -const { DocumentTypes, SEPARATOR } = require("../db/utils") -const { - FieldTypes, - BuildSchemaErrors, - InvalidColumns, -} = require("../constants") +import { DocumentTypes, SEPARATOR } from "../db/utils" +import { FieldTypes, BuildSchemaErrors, InvalidColumns } from "../constants" const DOUBLE_SEPARATOR = `${SEPARATOR}${SEPARATOR}` const ROW_ID_REGEX = /^\[.*]$/g @@ -158,7 +154,12 @@ function copyExistingPropsOver( if (!existingTableSchema.hasOwnProperty(key)) { continue } - if (existingTableSchema[key].type === "link") { + if ( + existingTableSchema[key].type === FieldTypes.LINK || + existingTableSchema[key].type === FieldTypes.OPTIONS || + ((!table.schema[key] || table.schema[key].type === FieldTypes.NUMBER) && + existingTableSchema[key].type === FieldTypes.BOOLEAN) + ) { table.schema[key] = existingTableSchema[key] } } From 3bea3e71f332d6b46be0064ed93bcb6c1a76b698 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 13 Jan 2022 14:38:12 +0000 Subject: [PATCH 39/40] v1.0.27-alpha.16 --- lerna.json | 2 +- packages/backend-core/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index c6b6ac7330..6943b316f3 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index dcbccb109b..4d9d87a1a7 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "description": "Budibase backend core libraries used in server and worker", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index 547fc850ae..b59fdc16bc 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 4ca9b3074d..65cfbb4617 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.15", - "@budibase/client": "^1.0.27-alpha.15", + "@budibase/bbui": "^1.0.27-alpha.16", + "@budibase/client": "^1.0.27-alpha.16", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.27-alpha.15", + "@budibase/string-templates": "^1.0.27-alpha.16", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index 32b50a3c77..a91ae0f25c 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 8fd4ed6964..7e65d983cd 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.15", + "@budibase/bbui": "^1.0.27-alpha.16", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.27-alpha.15", + "@budibase/string-templates": "^1.0.27-alpha.16", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 7a56418dde..040da37cfa 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -70,9 +70,9 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "^10.0.3", - "@budibase/backend-core": "^1.0.27-alpha.15", - "@budibase/client": "^1.0.27-alpha.15", - "@budibase/string-templates": "^1.0.27-alpha.15", + "@budibase/backend-core": "^1.0.27-alpha.16", + "@budibase/client": "^1.0.27-alpha.16", + "@budibase/string-templates": "^1.0.27-alpha.16", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 441aa536ad..31643f6ea3 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index a03c5503cd..102097eacf 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.27-alpha.15", + "version": "1.0.27-alpha.16", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.0.27-alpha.15", - "@budibase/string-templates": "^1.0.27-alpha.15", + "@budibase/backend-core": "^1.0.27-alpha.16", + "@budibase/string-templates": "^1.0.27-alpha.16", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0", From addcdf8bcc1cf09d1a1b796ea698df28e83213b2 Mon Sep 17 00:00:00 2001 From: Budibase Staging Release Bot <> Date: Thu, 13 Jan 2022 14:57:56 +0000 Subject: [PATCH 40/40] v1.0.27-alpha.17 --- lerna.json | 2 +- packages/backend-core/package.json | 2 +- packages/bbui/package.json | 2 +- packages/builder/package.json | 8 ++++---- packages/cli/package.json | 2 +- packages/client/package.json | 6 +++--- packages/server/package.json | 8 ++++---- packages/string-templates/package.json | 2 +- packages/worker/package.json | 6 +++--- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lerna.json b/lerna.json index 6943b316f3..4bbdf26b2f 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "npmClient": "yarn", "packages": [ "packages/*" diff --git a/packages/backend-core/package.json b/packages/backend-core/package.json index 4d9d87a1a7..648a493712 100644 --- a/packages/backend-core/package.json +++ b/packages/backend-core/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/backend-core", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "description": "Budibase backend core libraries used in server and worker", "main": "src/index.js", "author": "Budibase", diff --git a/packages/bbui/package.json b/packages/bbui/package.json index b59fdc16bc..199ccd6db2 100644 --- a/packages/bbui/package.json +++ b/packages/bbui/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/bbui", "description": "A UI solution used in the different Budibase projects.", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "license": "MPL-2.0", "svelte": "src/index.js", "module": "dist/bbui.es.js", diff --git a/packages/builder/package.json b/packages/builder/package.json index 65cfbb4617..06583ffde8 100644 --- a/packages/builder/package.json +++ b/packages/builder/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/builder", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "license": "GPL-3.0", "private": true, "scripts": { @@ -65,10 +65,10 @@ } }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.16", - "@budibase/client": "^1.0.27-alpha.16", + "@budibase/bbui": "^1.0.27-alpha.17", + "@budibase/client": "^1.0.27-alpha.17", "@budibase/colorpicker": "1.1.2", - "@budibase/string-templates": "^1.0.27-alpha.16", + "@budibase/string-templates": "^1.0.27-alpha.17", "@sentry/browser": "5.19.1", "@spectrum-css/page": "^3.0.1", "@spectrum-css/vars": "^3.0.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index a91ae0f25c..2f012e7630 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/cli", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "description": "Budibase CLI, for developers, self hosting and migrations.", "main": "src/index.js", "bin": { diff --git a/packages/client/package.json b/packages/client/package.json index 7e65d983cd..83b742d7fb 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/client", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "license": "MPL-2.0", "module": "dist/budibase-client.js", "main": "dist/budibase-client.js", @@ -19,9 +19,9 @@ "dev:builder": "rollup -cw" }, "dependencies": { - "@budibase/bbui": "^1.0.27-alpha.16", + "@budibase/bbui": "^1.0.27-alpha.17", "@budibase/standard-components": "^0.9.139", - "@budibase/string-templates": "^1.0.27-alpha.16", + "@budibase/string-templates": "^1.0.27-alpha.17", "regexparam": "^1.3.0", "shortid": "^2.2.15", "svelte-spa-router": "^3.0.5" diff --git a/packages/server/package.json b/packages/server/package.json index 040da37cfa..4fd5e89f4f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/server", "email": "hi@budibase.com", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "description": "Budibase Web Server", "main": "src/index.ts", "repository": { @@ -70,9 +70,9 @@ "license": "GPL-3.0", "dependencies": { "@apidevtools/swagger-parser": "^10.0.3", - "@budibase/backend-core": "^1.0.27-alpha.16", - "@budibase/client": "^1.0.27-alpha.16", - "@budibase/string-templates": "^1.0.27-alpha.16", + "@budibase/backend-core": "^1.0.27-alpha.17", + "@budibase/client": "^1.0.27-alpha.17", + "@budibase/string-templates": "^1.0.27-alpha.17", "@bull-board/api": "^3.7.0", "@bull-board/koa": "^3.7.0", "@elastic/elasticsearch": "7.10.0", diff --git a/packages/string-templates/package.json b/packages/string-templates/package.json index 31643f6ea3..bbfa64d01a 100644 --- a/packages/string-templates/package.json +++ b/packages/string-templates/package.json @@ -1,6 +1,6 @@ { "name": "@budibase/string-templates", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "description": "Handlebars wrapper for Budibase templating.", "main": "src/index.cjs", "module": "dist/bundle.mjs", diff --git a/packages/worker/package.json b/packages/worker/package.json index 102097eacf..d6bb45f9c4 100644 --- a/packages/worker/package.json +++ b/packages/worker/package.json @@ -1,7 +1,7 @@ { "name": "@budibase/worker", "email": "hi@budibase.com", - "version": "1.0.27-alpha.16", + "version": "1.0.27-alpha.17", "description": "Budibase background service", "main": "src/index.js", "repository": { @@ -29,8 +29,8 @@ "author": "Budibase", "license": "GPL-3.0", "dependencies": { - "@budibase/backend-core": "^1.0.27-alpha.16", - "@budibase/string-templates": "^1.0.27-alpha.16", + "@budibase/backend-core": "^1.0.27-alpha.17", + "@budibase/string-templates": "^1.0.27-alpha.17", "@koa/router": "^8.0.0", "@sentry/node": "^6.0.0", "@techpass/passport-openidconnect": "^0.3.0",