mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-08-10 16:57:54 +02:00
Updated Building Release (markdown)
@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
> Commit and merge the changes from our translation server!
|
> Commit and merge the changes from our translation server!
|
||||||
|
|
||||||
You need a clean 21.1 checkout without any uncommited or unpushed changes!
|
You need a clean 23.1 checkout without any uncommited or unpushed changes!
|
||||||
|
|
||||||
```
|
```
|
||||||
git clone git@github.com:EGroupware/egroupware.git epl-21.1-checkout
|
git clone git@github.com:EGroupware/egroupware.git epl-23.1-checkout
|
||||||
cd epl-21.1-checkout
|
cd epl-23.1-checkout
|
||||||
# install EPL apps
|
# install EPL apps
|
||||||
git clone git@github.com:EGroupwareGmbH/epl.git stylite
|
git clone git@github.com:EGroupwareGmbH/epl.git stylite
|
||||||
for app in esyncpro policy webauthn; do git clone git@github.com:EGroupwareGmbH/$app.git; done
|
for app in esyncpro policy webauthn; do git clone git@github.com:EGroupwareGmbH/$app.git; done
|
||||||
@ -21,53 +21,53 @@ Then you start the build, which will run install-cli.php again
|
|||||||
doc/rpm-build/checkout-build-archives.php -v
|
doc/rpm-build/checkout-build-archives.php -v
|
||||||
```
|
```
|
||||||
* it will determine the changelog based on commit messages and allows to modify it
|
* it will determine the changelog based on commit messages and allows to modify it
|
||||||
* it will create a tag ```21.1.<YYYYmmdd>``` (can be changed with ```--packaging <YYYYmmdd>```)
|
* it will create a tag ```23.1.<YYYYmmdd>``` (can be changed with ```--packaging <YYYYmmdd>```)
|
||||||
* at one point it needs the root password to update clamav database to virusscan the build-root
|
* at one point it needs the root password to update clamav database to virusscan the build-root
|
||||||
* pgp will ask the passphrase for build@egroupware.org key to sign the hashes of the archives
|
* pgp will ask the passphrase for build@egroupware.org key to sign the hashes of the archives
|
||||||
* at last it will ask the Github token of the user doing the upload (can be changed with ```--github_user <username>```)
|
* at last it will ask the Github token of the user doing the upload (can be changed with ```--github_user <username>```)
|
||||||
* the creation of the tag on Github will no longer trigger an automatic build of the Docker image ```egroupware/egroupware:19.1.<YYYYmmdd>``` on Docker Hub: https://cloud.docker.com/u/egroupware/repository/registry-1.docker.io/egroupware/egroupware, you have to manually run:
|
* the creation of the tag on Github will no longer trigger an automatic build of the Docker image ```egroupware/egroupware:19.1.<YYYYmmdd>``` on Docker Hub: https://cloud.docker.com/u/egroupware/repository/registry-1.docker.io/egroupware/egroupware, you have to manually run:
|
||||||
```
|
```
|
||||||
cd doc/docker/fpm
|
cd doc/docker/fpm
|
||||||
./build.sh 21.1.<YYYYmmdd>
|
./build.sh 23.1.<YYYYmmdd>
|
||||||
# for EPL
|
# for EPL
|
||||||
cd -; cd stylite/docker
|
cd -; cd stylite/docker
|
||||||
./build.sh 21.1.<YYYYmmdd>
|
./build.sh 21.1.<YYYYmmdd>
|
||||||
```
|
```
|
||||||
|
|
||||||
After testing the image, it need to be tagged as 21.1 and latest
|
After testing the image, it need to be tagged as 23.1 and latest
|
||||||
```
|
```
|
||||||
docker pull egroupware/egroupware:21.1.<YYYYmmdd>
|
docker pull egroupware/egroupware:23.1.<YYYYmmdd>
|
||||||
docker tag egroupware/egroupware:21.1.<YYYYmmdd> egroupware/egroupware:21.1
|
docker tag egroupware/egroupware:23.1.<YYYYmmdd> egroupware/egroupware:23.1
|
||||||
docker push egroupware/egroupware:21.1
|
docker push egroupware/egroupware:23.1
|
||||||
docker tag egroupware/egroupware:21.1.<YYYYmmdd> egroupware/egroupware:latest
|
docker tag egroupware/egroupware:23.1.<YYYYmmdd> egroupware/egroupware:latest
|
||||||
docker push egroupware/egroupware:latest
|
docker push egroupware/egroupware:latest
|
||||||
```
|
```
|
||||||
Push the changelog to 21.1 branch and merge the commit to master to satisfy the update checker:
|
Push the changelog to 23.1 branch and merge the commit to master to satisfy the update checker:
|
||||||
```
|
```
|
||||||
cd epl-21.1-checkout
|
cd epl-23.1-checkout
|
||||||
git push
|
git push
|
||||||
git log # to identify the change-log commit to merge to master
|
git log # to identify the change-log commit to merge to master
|
||||||
git checkout master
|
git checkout master
|
||||||
git pull
|
git pull
|
||||||
git cherry-pick <hash-from-changelog-commit>
|
git cherry-pick <hash-from-changelog-commit>
|
||||||
git push
|
git push
|
||||||
git checkout 21.1
|
git checkout 23.1
|
||||||
```
|
```
|
||||||
Last but not least remove the pre-release tag from ```19.1.<YYYYmmdd>``` release on Github and update first line of https://www.egroupware.org/currentversion
|
Last but not least remove the pre-release tag from ```23.1.<YYYYmmdd>``` release on Github and update first line of https://www.egroupware.org/currentversion
|
||||||
```
|
```
|
||||||
ssh docker.egroupware.org sed "'1 s/^.*$/21.1.<YYYYmmdd>/'" -i /var/www/egroupware.org/currentversion
|
ssh docker.egroupware.org sed "'1 s/^.*$/23.1.<YYYYmmdd>/'" -i /var/www/egroupware.org/currentversion
|
||||||
```
|
```
|
||||||
|
|
||||||
## Building the EPL image
|
## Building the EPL image
|
||||||
```
|
```
|
||||||
cd other/21.1/checkout # use a *different* up-to-date 21.1 checkout
|
cd other/23.1/checkout # use a *different* up-to-date 23.1 checkout
|
||||||
docker pull egroupware/egroupware:21.1.<YYYYmmdd>
|
docker pull egroupware/egroupware:23.1.<YYYYmmdd>
|
||||||
cd stylite
|
cd stylite
|
||||||
docker/build.sh 21.1.<YYYYmmdd>
|
docker/build.sh 23.1.<YYYYmmdd>
|
||||||
```
|
```
|
||||||
* it will pull the above build CE image
|
* it will pull the above build CE image
|
||||||
* add epl-functions to it
|
* add epl-functions to it
|
||||||
* tag it as ```quay.io/egroupware/epl:21.1.<YYYYmmdd>```, 21.1 and latest and push it to quay.io
|
* tag it as ```quay.io/egroupware/epl:23.1.<YYYYmmdd>```, 23.1 and latest and push it to quay.io
|
||||||
|
|
||||||
## Build RPM/DEB packages on build.opensuse.org
|
## Build RPM/DEB packages on build.opensuse.org
|
||||||
> This step is not necessary, if there are no changes on the package itself!
|
> This step is not necessary, if there are no changes on the package itself!
|
||||||
@ -79,26 +79,26 @@ git clone git@github.com:EGroupware/build.opensuse.org.git
|
|||||||
To build a new package you need to
|
To build a new package you need to
|
||||||
```
|
```
|
||||||
cd build.opensuse.org/server\:eGroupWare/egroupware-docker
|
cd build.opensuse.org/server\:eGroupWare/egroupware-docker
|
||||||
cp /your/21.1/checkout/doc/rpm-build/debian.changes .
|
cp /your/23.1/checkout/doc/rpm-build/debian.changes .
|
||||||
# fix the packaging accordingly
|
# fix the packaging accordingly
|
||||||
for file in egroupware-docker.{spec,dsc}; do sed -i 's/21.1.[0-9]\{8\}/21.1.<YYYYmmdd>/g' $file; done
|
for file in egroupware-docker.{spec,dsc}; do sed -i 's/23.1.[0-9]\{8\}/21.1.<YYYYmmdd>/g' $file; done
|
||||||
git rm egroupware-docker-21.1*.tar.gz
|
git rm egroupware-docker-23.1*.tar.gz
|
||||||
tar -czvf egroupware-docker-21.1.<YYYYmmdd>.tar.gz egroupware-docker
|
tar -czvf egroupware-docker-23.1.<YYYYmmdd>.tar.gz egroupware-docker
|
||||||
osc addremove
|
osc addremove
|
||||||
osc commit -m 'building 21.1.<YYYYmmdd>'
|
osc commit -m 'building 23.1.<YYYYmmdd>'
|
||||||
git add egroupware-docker-21.1.<YYYYmmdd>.tar.gz egroupware-docker.{spec,dsc} debian.changes
|
git add egroupware-docker-23.1.<YYYYmmdd>.tar.gz egroupware-docker.{spec,dsc} debian.changes
|
||||||
git commit -m 'changes for 21.1.<YYYYmmdd>'
|
git commit -m 'changes for 23.1.<YYYYmmdd>'
|
||||||
```
|
```
|
||||||
|
|
||||||
After testing EPL-Archives need to be rsync-ed to download.egroupware.org
|
After testing EPL-Archives need to be rsync-ed to download.egroupware.org
|
||||||
```
|
```
|
||||||
cd ~/download/archives
|
cd ~/download/archives
|
||||||
rsync -rv egroupware-21.1 download.egroupware.org:/var/www/html/stylite-epl/
|
rsync -rv egroupware-23.1 download.egroupware.org:/var/www/html/stylite-epl/
|
||||||
```
|
```
|
||||||
|
|
||||||
# Univention packages for 21.1
|
# Univention packages for 23.1
|
||||||
```
|
```
|
||||||
cd epl-21.1-checkout
|
cd epl-23.1-checkout
|
||||||
doc/rpm-build/release-appcenter.sh
|
doc/rpm-build/release-appcenter.sh
|
||||||
```
|
```
|
||||||
And writing an email to appcenter@univention.de that there is a new maintenance release.
|
And writing an email to appcenter@univention.de that there is a new maintenance release.
|
Reference in New Issue
Block a user