Skip to content

Commit e56ccb4

Browse files
committed
NO-JIRA: Added commands to upload docker images to the release instructions
1 parent 29c4fed commit e56ccb4

File tree

2 files changed

+47
-43
lines changed

2 files changed

+47
-43
lines changed

doc/developer-guide/src/main/markdown/release-instructions.md

+47-43
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,11 @@ Sources are kept in a Git repository. Thus a git client is required.
5757
* For bugfix release
5858
* if support branch exists (e.g as there are changes on main not to be included), check it out instead
5959

60-
git clone -b 9.0.x https://gitbox.apache.org/repos/asf/qpid-broker-j.git 9.0.x
61-
cd 9.0.x
60+
git clone -b 9.0.x https://gitbox.apache.org/repos/asf/qpid-broker-j.git 9.0.x
61+
cd 9.0.x
6262
2. Run RAT tool to verify that all source files have license headers
6363

64-
mvn apache-rat:check
64+
mvn apache-rat:check
6565
3. Add license headers to the files which do not have licenses. Update RAT excludes if required.
6666
4. Check that images don't have a non-free ICC profile.
6767

@@ -82,19 +82,19 @@ Sources are kept in a Git repository. Thus a git client is required.
8282
8. Build RC
8383
* If it is not a first RC, remove previous tag from git
8484

85-
git push --delete origin x.y.z
86-
git tag --delete x.y.z # deletes local tag
85+
git push --delete origin x.y.z
86+
git tag --delete x.y.z # deletes local tag
8787
* Cut the tag using maven:prepare
8888

89-
mvn release:clean
90-
mvn release:prepare -Papache-release,java-mms.1-0 -DautoVersionSubmodules=true -DpreparationGoals=test
89+
mvn release:clean
90+
mvn release:prepare -Papache-release,java-mms.1-0 -DautoVersionSubmodules=true -DpreparationGoals=test
9191
Release plugin will ask about new release version, tag name and new development version.
9292
Enter the same values for version and tag.
9393
On successful execution a tag with a provided name will be created, the tag version will be set to the specified
9494
release version and development version on the branch will be changed to the provided one.
9595
* Build the RC and publish release artifacts into maven staging repo
9696

97-
mvn release:perform -Papache-release,java-mms.1-0 -Darguments="-DskipTests"
97+
mvn release:perform -Papache-release,java-mms.1-0 -Darguments="-DskipTests"
9898
* The staging maven repository needs to be closed. Log into
9999
[Apache Nexus UI](https://repository.apache.org/#stagingRepositories), select the repository under
100100
**Staging Repository** and click `Close` button to close staging repository for any publishing of artifacts.
@@ -105,38 +105,31 @@ Sources are kept in a Git repository. Thus a git client is required.
105105
with name binaries. (Not doing so would break the site). Manually rename the source artifact to keep with
106106
the source artifact name consistent.
107107

108-
version=x.y.z
109-
root=https://repository.apache.org/content/repositories/orgapacheqpid-####
110-
mkdir binaries
111-
112-
for i in "" ".asc"; do
113-
curl -O $root/org/apache/qpid/apache-qpid-broker-j/${version}/apache-qpid-broker-j-$version-src.tar.gz$i
114-
if [[ "$i" == "" ]]; then
115-
sha512sum apache-qpid-broker-j-$version-src.tar.gz > apache-qpid-broker-j-$version-src.tar.gz.sha512
116-
fi
117-
done
118-
119-
cd binaries
120-
121-
for i in "" ".asc"; do
122-
for j in "tar.gz" "zip"; do
123-
curl -O $root/org/apache/qpid/apache-qpid-broker-j/${version}/apache-qpid-broker-j-$version-bin.$j$i
124-
done
125-
done
126-
127-
for j in "zip" "tar.gz"; do
128-
sha512sum apache-qpid-broker-j-$version-bin.$j > apache-qpid-broker-j-$version-bin.$j.sha512
129-
done
130-
131-
for j in "zip" "tar.gz"; do
132-
sha512sum -c apache-qpid-broker-j-$version-bin.$j.sha512
133-
gpg --verify apache-qpid-broker-j-$version-bin.$j.asc
134-
done
135-
136-
cd ..
137-
138-
sha512sum -c apache-qpid-broker-j-$version-src.tar.gz.sha512
139-
gpg --verify apache-qpid-broker-j-$version-src.tar.gz.asc
108+
version=x.y.z
109+
root=https://repository.apache.org/content/repositories/orgapacheqpid-####
110+
mkdir binaries
111+
for i in "" ".asc"; do
112+
curl -O $root/org/apache/qpid/apache-qpid-broker-j/${version}/apache-qpid-broker-j-$version-src.tar.gz$i
113+
if [[ "$i" == "" ]]; then
114+
sha512sum apache-qpid-broker-j-$version-src.tar.gz > apache-qpid-broker-j-$version-src.tar.gz.sha512
115+
fi
116+
done
117+
cd binaries
118+
for i in "" ".asc"; do
119+
for j in "tar.gz" "zip"; do
120+
curl -O $root/org/apache/qpid/apache-qpid-broker-j/${version}/apache-qpid-broker-j-$version-bin.$j$i
121+
done
122+
done
123+
for j in "zip" "tar.gz"; do
124+
sha512sum apache-qpid-broker-j-$version-bin.$j > apache-qpid-broker-j-$version-bin.$j.sha512
125+
done
126+
for j in "zip" "tar.gz"; do
127+
sha512sum -c apache-qpid-broker-j-$version-bin.$j.sha512
128+
gpg --verify apache-qpid-broker-j-$version-bin.$j.asc
129+
done
130+
cd ..
131+
sha512sum -c apache-qpid-broker-j-$version-src.tar.gz.sha512
132+
gpg --verify apache-qpid-broker-j-$version-src.tar.gz.asc
140133
* Send an email into **[email protected]** about RC availability with links to the maven staging repository
141134
and qpid dev staging area folder containing source and binary bundles.
142135
9. If RC is OK and voting passes (minimum 3 PMC/binding +1 votes, as well as net +ve overall), publish release artifacts:
@@ -147,8 +140,8 @@ Sources are kept in a Git repository. Thus a git client is required.
147140
* copy source and binary bundles and their signatures/checksum files form dev staging are into
148141
release distribution area.
149142

150-
svn cp -m "Publish x.y.z release artifacts" https://dist.apache.org/repos/dist/dev/qpid/broker-j/x.y.z-rc \
151-
https://dist.apache.org/repos/dist/release/qpid/broker-j/x.y.z
143+
svn cp -m "Publish Apache Qpid Broker-J x.y.z release artifacts" https://dist.apache.org/repos/dist/dev/qpid/broker-j/x.y.z-rc \
144+
https://dist.apache.org/repos/dist/release/qpid/broker-j/x.y.z
152145
If voting does not pass, resolve found issues, drop staging repository, delete git tag and repeat instructions
153146
from step 8 until voting passes.
154147
10. Wait until release is visible on the CDN and Maven Central after closing the vote.
@@ -183,4 +176,15 @@ Sources are kept in a Git repository. Thus a git client is required.
183176
14. Remove the previous release binaries from <https://dist.apache.org/repos/dist/release/qpid/broker-j>
184177
when a new one is announced.
185178
15. Update jenkins jobs if required.
186-
16. Docker images can be build and pushed to the container registry according to the qpid-docker [README.md](https://github.com/apache/qpid-broker-j/tree/main/qpid-docker#readme).
179+
16. Upload docker images to Docker Hub
180+
181+
cd qpid-docker
182+
./docker-build.sh --release 9.0.0 # prepare input files
183+
cd ./qpid-broker-j/9.0.0/docker/
184+
docker login -u username docker.io # login to Docker Hub
185+
docker build -f ./Containerfile -t qpid-broker-j:9.0.0 .
186+
docker build -f ./Containerfile --build-arg OS_NAME=alpine -t qpid-broker-j:9.0.0-alpine .
187+
docker push localhost/qpid-broker-j:9.0.0-alpine docker://docker.io/apache/qpid-broker-j:9.0.0-alpine
188+
docker push localhost/qpid-broker-j:9.0.0 docker://docker.io/apache/qpid-broker-j:9.0.0
189+
docker push localhost/qpid-broker-j:9.0.0-alpine docker://docker.io/apache/qpid-broker-j:latest-alpine
190+
docker push localhost/qpid-broker-j:9.0.0 docker://docker.io/apache/qpid-broker-j:latest

qpid-docker/docker-build.sh

100644100755
File mode changed.

0 commit comments

Comments
 (0)