From 1e3377cb0f5d8c4b0950f8a03526cad4d9d6d313 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 13:04:19 -0500 Subject: [PATCH 01/14] adding action for creating docker container. --- .github/workflows/create-docker-action.yml | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/create-docker-action.yml diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml new file mode 100644 index 000000000..4f8846688 --- /dev/null +++ b/.github/workflows/create-docker-action.yml @@ -0,0 +1,43 @@ +name: run_ci + +on: + workflow_dispatch: + release: + types: [published] + +env: + REGISTRY: ghcr.io + BACKEND_IMAGE: spiffworkflow-backend + +jobs: + build-and-push-backend-container: + runs-on: ubuntu-latest + + permissions: + contents: read + packages: write + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Log in to the Container registry + uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 + with: + images: ${{ env.REGISTRY }}/${{ env.BACKEND_IMAGE }} + + - name: Build and push Docker image + uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} From 49aa2d023c5d4232e3366ae22c88886cff4f25e4 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 13:17:51 -0500 Subject: [PATCH 02/14] just for testing --- .github/workflows/create-docker-action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index 4f8846688..ebea974e3 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -2,6 +2,8 @@ name: run_ci on: workflow_dispatch: + push: + branches: ['feature/releases'] # just for testing for a bit. release: types: [published] From d06002396f4208d95f21b5ecbefd8a2f91aa094e Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 13:27:56 -0500 Subject: [PATCH 03/14] gotta push to test minor tweaks. --- .github/workflows/backend_tests.yml | 3 ++- .github/workflows/create-docker-action.yml | 26 +++++++++++++--------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/.github/workflows/backend_tests.yml b/.github/workflows/backend_tests.yml index d80dd8f3e..42fb23595 100644 --- a/.github/workflows/backend_tests.yml +++ b/.github/workflows/backend_tests.yml @@ -1,7 +1,8 @@ name: Tests on: - - push + push: + branches: [ 'main' ] # just for testing for a bit. - pull_request defaults: diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index ebea974e3..4ff91669d 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -4,6 +4,11 @@ on: workflow_dispatch: push: branches: ['feature/releases'] # just for testing for a bit. + tags: + - 'v*' + pull_request: + branches: + - 'main' release: types: [published] @@ -21,23 +26,24 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - - name: Log in to the Container registry - uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + - name: Docker meta + id: meta + uses: docker/metadata-action@v4 + with: + images: name/app + + - name: Login to DockerHub + if: github.event_name != 'pull_request' + uses: docker/login-action@v2 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - name: Extract metadata (tags, labels) for Docker - id: meta - uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 - with: - images: ${{ env.REGISTRY }}/${{ env.BACKEND_IMAGE }} - - name: Build and push Docker image - uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc + uses: docker/build-push-action@v3 with: context: . push: true From 9d745281833811e0bbf932f565582e891ce012bc Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 13:29:40 -0500 Subject: [PATCH 04/14] correct context. --- .github/workflows/create-docker-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index 4ff91669d..ed0dee77c 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -45,7 +45,7 @@ jobs: - name: Build and push Docker image uses: docker/build-push-action@v3 with: - context: . + context: spiffworkflow-backend/. push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From 4fe2137b7fbf0e864771eee3e27b81df596786b8 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 13:56:51 -0500 Subject: [PATCH 05/14] buildx added to use a sub-directory --- .github/workflows/create-docker-action.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index ed0dee77c..45e2c6cde 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -17,7 +17,7 @@ env: BACKEND_IMAGE: spiffworkflow-backend jobs: - build-and-push-backend-container: + build-and-push-backend-docker: runs-on: ubuntu-latest permissions: @@ -42,10 +42,16 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - name: Build and push Docker image + # Setting up Docker Buildx with docker-container driver is required + # at the moment to be able to use a subdirectory with Git context + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Build and push Backend Docker Image uses: docker/build-push-action@v3 with: - context: spiffworkflow-backend/. + context: "{{defaultContext}}:spiffworkflow-backend" push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} + From d340530f176edf4008f76392662ac6712e4d798e Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 14:09:43 -0500 Subject: [PATCH 06/14] updating tag. --- .github/workflows/create-docker-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index 45e2c6cde..1a7e2305e 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -52,6 +52,6 @@ jobs: with: context: "{{defaultContext}}:spiffworkflow-backend" push: true - tags: ${{ steps.meta.outputs.tags }} + tags: "sartography/spiffworkflow-backend:${{ steps.meta.outputs.tags }}" labels: ${{ steps.meta.outputs.labels }} From e489bc7912996acf228f20e4f98a27263539aea5 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 14:22:53 -0500 Subject: [PATCH 07/14] Fixing setup again. --- .github/workflows/create-docker-action.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index 1a7e2305e..967cdd34e 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -31,8 +31,6 @@ jobs: - name: Docker meta id: meta uses: docker/metadata-action@v4 - with: - images: name/app - name: Login to DockerHub if: github.event_name != 'pull_request' From 063b8096fe3f2474b26532f49a37029c43c3bb62 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 14:26:37 -0500 Subject: [PATCH 08/14] and again. --- .github/workflows/create-docker-action.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index 967cdd34e..db4ee84ce 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -31,6 +31,8 @@ jobs: - name: Docker meta id: meta uses: docker/metadata-action@v4 + with: + images: sartography/spiffworkflow-backend - name: Login to DockerHub if: github.event_name != 'pull_request' @@ -50,6 +52,6 @@ jobs: with: context: "{{defaultContext}}:spiffworkflow-backend" push: true - tags: "sartography/spiffworkflow-backend:${{ steps.meta.outputs.tags }}" + tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} From d4c38815619a4d54ba946870593b9ad87f4d0121 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 14:35:47 -0500 Subject: [PATCH 09/14] And another. --- .github/workflows/backend_tests.yml | 2 +- .github/workflows/create-docker-action.yml | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/backend_tests.yml b/.github/workflows/backend_tests.yml index 42fb23595..209496eb7 100644 --- a/.github/workflows/backend_tests.yml +++ b/.github/workflows/backend_tests.yml @@ -1,7 +1,7 @@ name: Tests on: - push: + - push: branches: [ 'main' ] # just for testing for a bit. - pull_request diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index db4ee84ce..68888794d 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -32,7 +32,8 @@ jobs: id: meta uses: docker/metadata-action@v4 with: - images: sartography/spiffworkflow-backend + images: + name=sartography/spiffworkflow-backend - name: Login to DockerHub if: github.event_name != 'pull_request' From bae37a95e0773d1e55c86a5d427c1acab0b1a909 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 14:50:00 -0500 Subject: [PATCH 10/14] some random thing. --- .github/workflows/create-docker-action.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index 68888794d..4ffacb47b 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -32,8 +32,7 @@ jobs: id: meta uses: docker/metadata-action@v4 with: - images: - name=sartography/spiffworkflow-backend + images: some/random/thing - name: Login to DockerHub if: github.event_name != 'pull_request' From 3215770caea890e8860e61b4d5e41c1e8e3baa94 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 14:57:14 -0500 Subject: [PATCH 11/14] again --- .github/workflows/create-docker-action.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml index 4ffacb47b..5acb7fba0 100644 --- a/.github/workflows/create-docker-action.yml +++ b/.github/workflows/create-docker-action.yml @@ -32,7 +32,9 @@ jobs: id: meta uses: docker/metadata-action@v4 with: - images: some/random/thing + images: | + sartography/spiffworkflow-backend + - name: Login to DockerHub if: github.event_name != 'pull_request' @@ -52,6 +54,6 @@ jobs: with: context: "{{defaultContext}}:spiffworkflow-backend" push: true - tags: ${{ steps.meta.outputs.tags }} + tags: sartography/spiffworkflow-backend:latest labels: ${{ steps.meta.outputs.labels }} From c4dc33147f4b450f34e41fd9de6659ab25fdc458 Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 14:58:28 -0500 Subject: [PATCH 12/14] Per bug list we went over today, fixing a deep irritation with data object renaming, hopefully this feels better. --- .../app/spiffworkflow/DataObject/DataObjectHelpers.js | 9 +++++++++ .../spiffworkflow/DataObject/DataObjectInterceptor.js | 4 ++-- .../DataObject/propertiesPanel/DataObjectArray.js | 4 ++-- .../DataObject/propertiesPanel/DataObjectSelect.js | 3 ++- .../test/spec/DataObjectInterceptorSpec.js | 5 +++-- bpmn-js-spiffworkflow/test/spec/DataObjectPropsSpec.js | 2 +- 6 files changed, 19 insertions(+), 8 deletions(-) diff --git a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectHelpers.js b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectHelpers.js index fc03799c9..622651507 100644 --- a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectHelpers.js +++ b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectHelpers.js @@ -46,3 +46,12 @@ export function findDataReferenceShapes(processShape, id) { } return refs; } + +export function idToHumanReadableName(id) { + const words = id.match(/[A-Za-z][a-z]*/g) || []; + return words.map(capitalize).join(' '); + + function capitalize(word) { + return word.charAt(0).toUpperCase() + word.substring(1); + } +} diff --git a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectInterceptor.js b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectInterceptor.js index 2fb3498d9..0af2251d2 100644 --- a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectInterceptor.js +++ b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/DataObjectInterceptor.js @@ -1,6 +1,6 @@ import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; import {getDi, is} from 'bpmn-js/lib/util/ModelUtil'; -import {findDataObjects, findDataReferenceShapes} from './DataObjectHelpers'; +import {findDataObjects, findDataReferenceShapes, idToHumanReadableName} from './DataObjectHelpers'; var HIGH_PRIORITY = 1500; import { remove as collectionRemove, @@ -49,7 +49,7 @@ export default class DataObjectInterceptor extends CommandInterceptor { } // Update the name of the reference to match the data object's id. - shape.businessObject.name = dataObject.id; + shape.businessObject.name = idToHumanReadableName(dataObject.id); // set the reference to the DataObject shape.businessObject.dataObjectRef = dataObject; diff --git a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectArray.js b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectArray.js index d24cf54ac..4e8a9ed4b 100644 --- a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectArray.js +++ b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectArray.js @@ -5,7 +5,7 @@ import { } from '@bpmn-io/properties-panel'; import { without } from 'min-dash'; import { is } from 'bpmn-js/lib/util/ModelUtil'; -import { findDataObjects, findDataReferenceShapes } from '../DataObjectHelpers'; +import {findDataObjects, findDataReferenceShapes, idToHumanReadableName} from '../DataObjectHelpers'; /** * Provides a list of data objects, and allows you to add / remove data objects, and change their ids. @@ -129,7 +129,7 @@ function DataObjectTextField(props) { element: ref, moddleElement: ref.businessObject, properties: { - name: value, + name: idToHumanReadableName(value), }, changed: [ref], // everything is already marked as changed, don't recalculate. }); diff --git a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectSelect.js b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectSelect.js index 3d6d1ef9c..fdb5e966a 100644 --- a/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectSelect.js +++ b/bpmn-js-spiffworkflow/app/spiffworkflow/DataObject/propertiesPanel/DataObjectSelect.js @@ -1,5 +1,6 @@ import {useService } from 'bpmn-js-properties-panel'; import { SelectEntry } from '@bpmn-io/properties-panel'; +import {idToHumanReadableName} from '../DataObjectHelpers'; /** * Finds the value of the given type within the extensionElements @@ -43,7 +44,7 @@ export function DataObjectSelect(props) { element, moddleElement: businessObject, properties: { - 'name': flowElem.id + 'name': idToHumanReadableName(flowElem.id) } }); } diff --git a/bpmn-js-spiffworkflow/test/spec/DataObjectInterceptorSpec.js b/bpmn-js-spiffworkflow/test/spec/DataObjectInterceptorSpec.js index 85edf9374..1fa83245f 100644 --- a/bpmn-js-spiffworkflow/test/spec/DataObjectInterceptorSpec.js +++ b/bpmn-js-spiffworkflow/test/spec/DataObjectInterceptorSpec.js @@ -4,7 +4,7 @@ import { BpmnPropertiesPanelModule, BpmnPropertiesProviderModule } from 'bpmn-js import { inject, } from 'bpmn-js/test/helper'; -import { findDataObjects } from '../../app/spiffworkflow/DataObject/DataObjectHelpers'; +import {findDataObjects, idToHumanReadableName} from '../../app/spiffworkflow/DataObject/DataObjectHelpers'; describe('DataObject Interceptor', function() { @@ -93,7 +93,8 @@ describe('DataObject Interceptor', function() { { x: 220, y: 220 }, rootShape); const dataObjects = findDataObjects(rootShape.businessObject); - expect(dataObjectRefShape1.businessObject.name).to.equal(dataObjects[0].id); + const human_readable_name = idToHumanReadableName(dataObjects[0].id) + expect(dataObjectRefShape1.businessObject.name).to.equal(human_readable_name); })); it('should allow you to add a data object to a subprocess', inject(function(canvas, modeling, elementRegistry) { diff --git a/bpmn-js-spiffworkflow/test/spec/DataObjectPropsSpec.js b/bpmn-js-spiffworkflow/test/spec/DataObjectPropsSpec.js index 1223c136f..49b1abbba 100644 --- a/bpmn-js-spiffworkflow/test/spec/DataObjectPropsSpec.js +++ b/bpmn-js-spiffworkflow/test/spec/DataObjectPropsSpec.js @@ -75,7 +75,7 @@ describe('Properties Panel for Data Objects', function() { // THEN - both the data object itself, and the label of any references are updated. expect(my_data_ref_1.businessObject.dataObjectRef.id).to.equal('my_nifty_new_name'); - expect(my_data_ref_1.businessObject.name).to.equal('my_nifty_new_name'); + expect(my_data_ref_1.businessObject.name).to.equal('My Nifty New Name'); }); }); From 3b8e7fa1d68eac1dee50e97051c77e7213ffbd3a Mon Sep 17 00:00:00 2001 From: Dan Date: Thu, 17 Nov 2022 15:00:08 -0500 Subject: [PATCH 13/14] removing unrelated github action changes. --- .github/workflows/backend_tests.yml | 3 +- .github/workflows/create-docker-action.yml | 59 ---------------------- 2 files changed, 1 insertion(+), 61 deletions(-) delete mode 100644 .github/workflows/create-docker-action.yml diff --git a/.github/workflows/backend_tests.yml b/.github/workflows/backend_tests.yml index 209496eb7..d80dd8f3e 100644 --- a/.github/workflows/backend_tests.yml +++ b/.github/workflows/backend_tests.yml @@ -1,8 +1,7 @@ name: Tests on: - - push: - branches: [ 'main' ] # just for testing for a bit. + - push - pull_request defaults: diff --git a/.github/workflows/create-docker-action.yml b/.github/workflows/create-docker-action.yml deleted file mode 100644 index 5acb7fba0..000000000 --- a/.github/workflows/create-docker-action.yml +++ /dev/null @@ -1,59 +0,0 @@ -name: run_ci - -on: - workflow_dispatch: - push: - branches: ['feature/releases'] # just for testing for a bit. - tags: - - 'v*' - pull_request: - branches: - - 'main' - release: - types: [published] - -env: - REGISTRY: ghcr.io - BACKEND_IMAGE: spiffworkflow-backend - -jobs: - build-and-push-backend-docker: - runs-on: ubuntu-latest - - permissions: - contents: read - packages: write - - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - - name: Docker meta - id: meta - uses: docker/metadata-action@v4 - with: - images: | - sartography/spiffworkflow-backend - - - - name: Login to DockerHub - if: github.event_name != 'pull_request' - uses: docker/login-action@v2 - with: - registry: ${{ env.REGISTRY }} - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - # Setting up Docker Buildx with docker-container driver is required - # at the moment to be able to use a subdirectory with Git context - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - - - name: Build and push Backend Docker Image - uses: docker/build-push-action@v3 - with: - context: "{{defaultContext}}:spiffworkflow-backend" - push: true - tags: sartography/spiffworkflow-backend:latest - labels: ${{ steps.meta.outputs.labels }} - From 08a1c230dfd5393e8682ccff6170a36d66eea100 Mon Sep 17 00:00:00 2001 From: Jon Herron Date: Fri, 18 Nov 2022 13:31:22 -0500 Subject: [PATCH 14/14] Add connector-proxy-demo --- bin/pull-subtrees | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bin/pull-subtrees b/bin/pull-subtrees index cc029ef90..8002791b9 100755 --- a/bin/pull-subtrees +++ b/bin/pull-subtrees @@ -11,7 +11,8 @@ for subtree in "SpiffWorkflow" \ "spiffworkflow-backend" \ "spiffworkflow-frontend" \ "flask-bpmn" \ - "bpmn-js-spiffworkflow" + "bpmn-js-spiffworkflow" \ + "connector-proxy-demo" do GIT_MERGE_AUTOEDIT=no git subtree pull --prefix=$subtree git@github.com:sartography/$subtree.git main --squash done