@@ -70,16 +70,20 @@ jobs:
70
70
git clone https://github.com/ikarus-project/ikarus-project.github.io.git
71
71
cd ikarus-project.github.io
72
72
git fetch origin gh-pages --depth=1
73
+ git checkout -B gh-pages origin/gh-pages
73
74
cp -R ../repo/build_docs/ .
74
75
cp -R ../repo/ikarus/ .
75
76
git config --local user.email "[email protected] "
76
77
git config --local user.name "IkarusBot"
77
78
cd build_docs/docs
78
79
export MKDOCSOFFLINE=false
79
- mike deploy v$NEWVERSION --config-file mkdocs.insiders.yml
80
- mike deploy dev --config-file mkdocs.insiders.yml
80
+ mike deploy v$NEWVERSION --config-file mkdocs.insiders.yml
81
+ mike deploy dev --config-file mkdocs.insiders.yml
82
+ cd ../../
81
83
git remote set-url origin https://${{ secrets.ORGANIZATION_TOKEN }}@github.com/ikarus-project/ikarus-project.github.io.git
82
- git push origin gh-pages
84
+ # Pull first to avoid non-fast-forward push issues
85
+ git pull origin gh-pages --rebase
86
+ git push origin gh-pages
83
87
export MKDOCSOFFLINE=true
84
88
85
89
- uses : actions/cache@v4
@@ -104,7 +108,6 @@ jobs:
104
108
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
105
109
chmod a+r /etc/apt/keyrings/docker.gpg
106
110
107
- # Add the repository to Apt sources:
108
111
echo \
109
112
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
110
113
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
@@ -115,28 +118,27 @@ jobs:
115
118
run : |
116
119
docker system prune -af
117
120
df -h # Optional: shows how much space was freed
118
- - name : Download, tag, push and save docker images for new release
119
- run : |
120
- docker pull ikarusproject/ikarus-dev:latest
121
- docker tag ikarusproject/ikarus-dev:latest ikarusproject/ikarus-dev:v$NEWVERSION
122
-
123
- docker pull ikarusproject/ikarus-dev-gcc:latest
124
- docker tag ikarusproject/ikarus-dev-gcc:latest ikarusproject/ikarus-dev-gcc:v$NEWVERSION
125
121
126
- docker pull ikarusproject/ikarus-dev-clang:latest
127
- docker tag ikarusproject/ikarus-dev-clang:latest ikarusproject/ikarus-dev-clang:$NEWVERSION
128
-
129
- docker pull ikarusproject/ikarus:latest
130
- docker tag ikarusproject/ikarus:latest ikarusproject/ikarus:v$NEWVERSION
122
+ - name : Pull, tag, push, and optionally save docker images one by one
123
+ shell : bash
124
+ run : |
125
+ IMAGES=("ikarus-dev" "ikarus-dev-gcc" "ikarus-dev-clang" "ikarus" "ikarus-gcc" "ikarus-clang")
131
126
132
- docker pull ikarusproject/ikarus-gcc:latest
133
- docker tag ikarusproject/ikarus-gcc:latest ikarusproject/ikarus-gcc:v$NEWVERSION
127
+ for IMAGE in "${IMAGES[@]}"; do
128
+ echo "Processing image: $IMAGE"
129
+ docker pull ikarusproject/$IMAGE:latest
130
+ docker tag ikarusproject/$IMAGE:latest ikarusproject/$IMAGE:v$NEWVERSION
131
+ docker push ikarusproject/$IMAGE:v$NEWVERSION
134
132
135
- docker pull ikarusproject/ikarus-clang:latest
136
- docker tag ikarusproject/ikarus-clang:latest ikarusproject/ikarus-clang:v$NEWVERSION
133
+ if [[ "$IMAGE" == "ikarus" ]]; then
134
+ docker save ikarusproject/$IMAGE:v$NEWVERSION > ikarus-docker-v$NEWVERSION.tar
135
+ gzip -c9 ikarus-docker-v$NEWVERSION.tar > ikarus-docker-v$NEWVERSION.tar.gz
136
+ fi
137
137
138
- docker save ikarusproject/ikarus:v$NEWVERSION > ikarus-docker-v$NEWVERSION.tar
139
- gzip -c9 ikarus-docker-v$NEWVERSION.tar > ikarus-docker-v$NEWVERSION.tar.gz
138
+ docker image rm ikarusproject/$IMAGE:latest || true
139
+ docker image rm ikarusproject/$IMAGE:v$NEWVERSION || true
140
+ echo "Done with $IMAGE"
141
+ done
140
142
141
143
- name : Checkout ikarus-examples and create tag, push it, zip it
142
144
run : |
@@ -156,12 +158,6 @@ jobs:
156
158
cd ../ikarus-examples-v$NEWVERSION
157
159
git push https://${{ secrets.ORGANIZATION_TOKEN }}@github.com/ikarus-project/ikarus-examples.git v$NEWVERSION
158
160
cd ..
159
- docker push ikarusproject/ikarus-dev:v$NEWVERSION
160
- docker push ikarusproject/ikarus-dev-gcc:v$NEWVERSION
161
- docker push ikarusproject/ikarus-dev-clang:v$NEWVERSION
162
- docker push ikarusproject/ikarus:v$NEWVERSION
163
- docker push ikarusproject/ikarus-gcc:v$NEWVERSION
164
- docker push ikarusproject/ikarus-clang:v$NEWVERSION
165
161
cd repo
166
162
git push origin main
167
163
git push origin v$NEWVERSION
0 commit comments