diff --git a/.github/workflows/build-push.yaml b/.github/workflows/build-push.yaml index 5c331de6..ccf90ab7 100644 --- a/.github/workflows/build-push.yaml +++ b/.github/workflows/build-push.yaml @@ -8,7 +8,7 @@ on: jobs: docker_publish: - name: Build, Tag, and Push Images + name: Build, Tag, and Push Image runs-on: ubuntu-latest strategy: diff --git a/development.md b/development.md index c20d1f3c..b4fb5439 100644 --- a/development.md +++ b/development.md @@ -31,14 +31,15 @@ This is essentially equivalent to running `make image-push TAG=` in the exa 1. Create a PR for your changes. Once merged, it will trigger a workflow to build and push the images for all the examples, with the tag `stable`. This consistent tag name is used so that the tags in the [E2E test pipelines](https://github.com/numaproj/numaflow/tree/main/test) do not need to be updated each time a new change is made. -2. After the changes have been merged it is encouraged to update the dependency management files so that the version +2. If the change that you have introduced is a breaking change, i.e. adds new feature/logic, then after merge it is encouraged to update the dependency management files so that the version displayed in the `go.mod` file reflects the commit SHA of the merged changes. This can be done by getting the commit SHA of the merged changes and using it with the update script. Alternatively, you can provide the specific version that you would like to update to, or even pass in `latest` to fetch the latest version from the remote repository: ```shell ./update_examples.sh -u ``` -After running the script, create another PR for these changes. +After running the script, create another PR for these changes. Ideally, the update script should only be need to run when a new version is released, i.e. provide a version or `latest` to update script, +or a breaking change is merged before the next release, i.e. provide commit SHA to update script. Updating the version may not seem necessary since we are using local references. However, the client prints out information related to the server, which includes the SDK version, which is retrieved from the `go.mod` file. diff --git a/update_examples.sh b/update_examples.sh index 5051b0f7..947a6459 100755 --- a/update_examples.sh +++ b/update_examples.sh @@ -102,7 +102,7 @@ if (( usingBuildPush + usingBuildPushExample + usingVersion + usingHelp > 1 )); exit 1 fi -if (( usingTag + usingVersion + usingHelp > 1 || (usingTag && usingBuildPush + usingBuildPushExample == 0) )); then +if (( (usingTag + usingVersion + usingHelp > 1) || (usingTag && usingBuildPush + usingBuildPushExample == 0) )); then echo "Can only use -t with -bp or -bpe" >&2 show_help exit 1