Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

document Git, GitHub, Docker Hub, and Quay.io release process #360

Merged
merged 4 commits into from
Jan 17, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,59 @@ or join the [gitter chat for cwlviewer](https://gitter.im/common-workflow-langua
## Changelog
See [CHANGELOG](https://github.com/common-workflow-language/cwlviewer/blob/main/CHANGELOG.md)

## Making a development snapshot container image
(and optionally publishing that image to DockerHub)

```shell
# confirm the build arguments
# if these don't look correct, troubleshoot before continuing.
BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') VCS_REF=$(git rev-parse HEAD) VERSION=$(git describe)
echo BUILD_DATE=${BUILD_DATE} VCS_REF=${VCS_REF} VERSION=${VERSION}
# build the container image
docker build --build-arg BUILD_DATE=${BUILD_DATE} --build-arg VCS_REF=${VCS_REF} \
--build-arg VERSION=${VERSION} \
-t cwlviewer:v${VERSION} .
# the rest is optional
docker tag cwlviewer:v${VERSION} docker.io/commonworkflowlanguage/cwlviewer:v${VERSION}
docker tag cwlviewer:v${VERSION} quay.io/commonwl/cwlviewer:v${VERSION}
docker push docker.io/commonworkflowlanguage/cwlviewer:v${VERSION}
docker push quay.io/commonwl/cwlviewer:v${VERSION}
```

## Making a release and publishing to GitHub, DockerHub, and Quay.io

After CHANGELOG.md has been updated, run the following:

```shell
new_version=1.4.1 # CHANGEME
# create an annotated git tag
git tag -a -m "release version ${new_version}" v${new_version}
# confirm the build arguments
# if these don't look correct, troubleshoot before continuing.
# for example, was your tag an annotated (-a) tag?
BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') VCS_REF=$(git rev-parse HEAD) VERSION=$(git describe)
echo BUILD_DATE=${BUILD_DATE} VCS_REF=${VCS_REF} VERSION=${VERSION}
# build the container image
docker build --build-arg BUILD_DATE=${BUILD_DATE} --build-arg VCS_REF=${VCS_REF} \
--build-arg VERSION=${VERSION} \
-t cwlviewer:v${VERSION} .
# tag this container image in preparation for pushing to Docker Hub and Quay.io
docker tag cwlviewer:v${VERSION} docker.io/commonworkflowlanguage/cwlviewer:v${VERSION}
docker tag cwlviewer:v${VERSION} docker.io/commonworkflowlanguage/cwlviewer:latest
docker tag cwlviewer:v${VERSION} quay.io/commonwl/cwlviewer:v${VERSION}
docker tag cwlviewer:v${VERSION} quay.io/commonwl/cwlviewer:latest
# push the container image to Docker Hub and Quay.io
docker push docker.io/commonworkflowlanguage/cwlviewer:v${VERSION}
docker push docker.io/commonworkflowlanguage/cwlviewer:latest
docker push quay.io/commonwl/cwlviewer:v${VERSION}
docker push quay.io/commonwl/cwlviewer:latest
# upload the annotated tag to GitHub
git push --tags
```

Then copy the changelog into https://github.com/common-workflow-language/cwlviewer/releases/new
using the tag you just pushed

# Thanks

Developers and [contributors](https://github.com/common-workflow-language/cwlviewer/graphs/contributors) include:
Expand Down