Skip to content

Commit ea1ab4b

Browse files
committed
ci: deploy to GitHub instead of Gerrit
1 parent 171bf89 commit ea1ab4b

File tree

5 files changed

+110
-37
lines changed

5 files changed

+110
-37
lines changed
+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Deploy to gerrit (legacy)
2+
3+
on:
4+
push:
5+
tags:
6+
- '*'
7+
8+
jobs:
9+
deploy:
10+
name: Deploy
11+
runs-on: ubuntu-latest
12+
env:
13+
SSH_USER: ${{ secrets.SSH_USER }}
14+
SSH_KEY: ${{ secrets.SSH_KEY }}
15+
GIT_EMAIL: ${{ secrets.GIT_EMAIL }}
16+
GIT_NAME: ${{ secrets.GIT_NAME }}
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v3
20+
- name: Setup Node
21+
uses: actions/setup-node@v3
22+
with:
23+
node-version: '18.x'
24+
- name: Deploy
25+
run: ./scripts/deploy-to-gerrit.sh

.github/workflows/deploy.yml

+12-7
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,22 @@ jobs:
99
deploy:
1010
name: Deploy
1111
runs-on: ubuntu-latest
12-
env:
13-
SSH_USER: ${{ secrets.SSH_USER }}
14-
SSH_KEY: ${{ secrets.SSH_KEY }}
15-
GIT_EMAIL: ${{ secrets.GIT_EMAIL }}
16-
GIT_NAME: ${{ secrets.GIT_NAME }}
12+
# env:
13+
# GIT_EMAIL: ${{ secrets.GIT_EMAIL }}
14+
# GIT_NAME: ${{ secrets.GIT_NAME }}
1715
steps:
1816
- name: Checkout
19-
uses: actions/checkout@v2
17+
uses: actions/checkout@v3
2018
- name: Setup Node
21-
uses: actions/setup-node@v1
19+
uses: actions/setup-node@v3
2220
with:
2321
node-version: '18.x'
22+
- name: Checkout
23+
uses: actions/checkout@v3
24+
with:
25+
token: ${{ secrets.PAT_GITHUB }}
26+
repository: jkubeio/jkube-website-publish
27+
ref: main
28+
path: jkube-website-publish
2429
- name: Deploy
2530
run: ./scripts/deploy.sh

.github/workflows/tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ jobs:
1212
runs-on: ubuntu-latest
1313
steps:
1414
- name: Checkout
15-
uses: actions/checkout@v2
15+
uses: actions/checkout@v3
1616
- name: Setup Node
17-
uses: actions/setup-node@v1
17+
uses: actions/setup-node@v3
1818
with:
1919
node-version: '18.x'
2020
- name: Install

scripts/deploy-to-gerrit.sh

+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
#!/bin/bash
2+
3+
trap 'error' ERR
4+
5+
ECLIPSE_SERVERS[0]="[git.eclipse.org]:29418 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKPWcmP3foX15NodSZXwPWP/YZUDRSLAGF/1nAVDYuJIPpbhnCrsZ5imxzMyzufEZoQ4IainqYj71MFtTyeSXwc="
6+
ECLIPSE_SERVERS[1]="[git.eclipse.org]:29418 ecdsa-sha2-nistp384 AAAAE2VjZHNhLXNoYTItbmlzdHAzODQAAAAIbmlzdHAzODQAAABhBERdg5QiGIbLMjUSLShomjVOSczU4o24GfbDDzzJJcuVP4xmcXv6JEZdfr7ijjpZtqRH9ZTwRlildVbMlWb8/IJakZzr1zhehsw+sD+EF+gmxWPu71ZvNgRfZPumx8I7sQ=="
7+
ECLIPSE_SERVERS[2]="[git.eclipse.org]:29418 ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBACayKawmejZ2qqculp0fBRKrtWgybnDvzCVy0x2E4ayTLlLmWc80ak411bfqH9qmN9O8MmLnS8nMaun7LXzNUG28gGLYLn+IevprUpFK1o256Yute4APJtoHZRNIAgf62BtwuBptudKR7ZLEE/g62R8e9BHpump10duT8RPl9dgOgy7rg=="
8+
ECLIPSE_SERVERS[3]="[git.eclipse.org]:29418 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAn1P3D1rGBOVnj043ArtjaJBILKuQy5LSt9LCJc0a/xLwVvHltiQtXH9fnZ6oKUNr6zacRF0fq2Bid3hdh9fQO94+l4qFOOszfX4662Z3pi3nR4yE/bmCoNswKloUiQHy7BWjM8JTJOStZuQjBI2cTvVWKzUCT8A+iyqrDsNeqKPVXfwoOCUo3+O5Tfvv0h1VrXCmNS31W7srGQRiTUEzeKa3IXuQ85UvozHNMs1vmguCZYpNeoL/3U+dYaR3xba19ijbHrNog3GZ3ku8NiNeGhcCjx/Ar+Fj2bH4X1JIls6lC7NRYZadlifu9BxvqB2tgdcqCEw9OqqzeSKo+715Hw=="
9+
ECLIPSE_SERVERS[4]="[git.eclipse.org]:29418 ssh-dss AAAAB3NzaC1kc3MAAACBAJhl1CSP2rzgPCUPvl+jxdKcD3npSp5MNYdqLL2XoCLw/PHL2JZUN0zVV9/mCT3Im39OvyyPtAQ/KvAlMtJeX+mfHvG/33fub5P/xMJlrJhS+VrVVIZxDBGPbYktO7ySiOs/FWJE1+5pjMpJbqt4a4FhpnsojmKHsY9FEg7mufN7AAAAFQDyJAzuwliAQKXAQzqa2KqmyPFhVQAAAIAVzilOrNogcZuA3y8sUg/wjnQG2rZhyfbMhSpc7NKjkctf3fdIGjQp7HUJlNA29TnMoiThNng3KvuGm4WtOQYi3KxIxAlom+2Rxm1RR5kYyvGK0hDW86ZXnhaCiuGxctS+rNf6QjJ8FVtUEG8v84xiHtOWh5FrlkEB3UcSFFwBAAAAAIBK8vb6wXY9J/KXv7e3X1lyg81EJma/UuFXcizaZrw2bAhiJ/P+AK3TGNcOF7ypTKCoSkRZdEMeYjx9ljCFHkgGuUpO6vyABai9CG9zpyaHAMbcQ3PlBeCws0l2rqRHay0eIACvX2xMhFXxXr8n6zJy0FiVQ2aRAb6/4OFhWR9rMQ=="
10+
11+
GERRIT_REPO="ssh://$SSH_USER@git.eclipse.org:29418/www.eclipse.org/jkube"
12+
13+
BASEDIR=$(dirname "$BASH_SOURCE")
14+
TEMP_DIR=$(realpath "$BASEDIR/../temp")
15+
WEB_DIR=$(realpath "$BASEDIR/..")
16+
ECLIPSE_REPO_DIR="$TEMP_DIR/jkube"
17+
18+
function initEnvironment() {
19+
mkdir -p "$TEMP_DIR"
20+
mkdir -p ~/.ssh
21+
echo "$SSH_KEY" > ~/.ssh/id_rsa
22+
chmod 600 ~/.ssh/id_rsa
23+
for _eclipse_server in "${ECLIPSE_SERVERS[@]}" ; do
24+
grep -qxF "$_eclipse_server" ~/.ssh/known_hosts || echo "$_eclipse_server" >> ~/.ssh/known_hosts
25+
done
26+
git config --global user.email "$GIT_EMAIL"
27+
git config --global user.name "$GIT_NAME"
28+
}
29+
30+
function cleanUp() {
31+
rm -rf "$TEMP_DIR"
32+
}
33+
34+
function cloneAndPrepareEclipseRepo() {
35+
git clone "$GERRIT_REPO" "$ECLIPSE_REPO_DIR"
36+
find "$ECLIPSE_REPO_DIR" -maxdepth 1 ! -path "$ECLIPSE_REPO_DIR" ! -name '.git' -exec rm -rf {} +
37+
}
38+
39+
function build() {
40+
npm install --prefix "$WEB_DIR" "$WEB_DIR"
41+
npm run --prefix "$WEB_DIR" build
42+
}
43+
44+
function deploy() {
45+
cp -avr "$WEB_DIR/public/"* "$ECLIPSE_REPO_DIR"
46+
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" add "$ECLIPSE_REPO_DIR"
47+
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" commit -m "CI: Website updated" --signoff
48+
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" push origin master
49+
}
50+
51+
function error() {
52+
echo 'Error while deploying JKube website - Cleaning Up temporary files'
53+
cleanUp
54+
exit 1
55+
}
56+
57+
cleanUp
58+
initEnvironment
59+
cloneAndPrepareEclipseRepo
60+
build
61+
deploy
62+
cleanUp

scripts/deploy.sh

+9-28
Original file line numberDiff line numberDiff line change
@@ -2,37 +2,18 @@
22

33
trap 'error' ERR
44

5-
ECLIPSE_SERVERS[0]="[git.eclipse.org]:29418 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKPWcmP3foX15NodSZXwPWP/YZUDRSLAGF/1nAVDYuJIPpbhnCrsZ5imxzMyzufEZoQ4IainqYj71MFtTyeSXwc="
6-
ECLIPSE_SERVERS[1]="[git.eclipse.org]:29418 ecdsa-sha2-nistp384 AAAAE2VjZHNhLXNoYTItbmlzdHAzODQAAAAIbmlzdHAzODQAAABhBERdg5QiGIbLMjUSLShomjVOSczU4o24GfbDDzzJJcuVP4xmcXv6JEZdfr7ijjpZtqRH9ZTwRlildVbMlWb8/IJakZzr1zhehsw+sD+EF+gmxWPu71ZvNgRfZPumx8I7sQ=="
7-
ECLIPSE_SERVERS[2]="[git.eclipse.org]:29418 ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBACayKawmejZ2qqculp0fBRKrtWgybnDvzCVy0x2E4ayTLlLmWc80ak411bfqH9qmN9O8MmLnS8nMaun7LXzNUG28gGLYLn+IevprUpFK1o256Yute4APJtoHZRNIAgf62BtwuBptudKR7ZLEE/g62R8e9BHpump10duT8RPl9dgOgy7rg=="
8-
ECLIPSE_SERVERS[3]="[git.eclipse.org]:29418 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAn1P3D1rGBOVnj043ArtjaJBILKuQy5LSt9LCJc0a/xLwVvHltiQtXH9fnZ6oKUNr6zacRF0fq2Bid3hdh9fQO94+l4qFOOszfX4662Z3pi3nR4yE/bmCoNswKloUiQHy7BWjM8JTJOStZuQjBI2cTvVWKzUCT8A+iyqrDsNeqKPVXfwoOCUo3+O5Tfvv0h1VrXCmNS31W7srGQRiTUEzeKa3IXuQ85UvozHNMs1vmguCZYpNeoL/3U+dYaR3xba19ijbHrNog3GZ3ku8NiNeGhcCjx/Ar+Fj2bH4X1JIls6lC7NRYZadlifu9BxvqB2tgdcqCEw9OqqzeSKo+715Hw=="
9-
ECLIPSE_SERVERS[4]="[git.eclipse.org]:29418 ssh-dss AAAAB3NzaC1kc3MAAACBAJhl1CSP2rzgPCUPvl+jxdKcD3npSp5MNYdqLL2XoCLw/PHL2JZUN0zVV9/mCT3Im39OvyyPtAQ/KvAlMtJeX+mfHvG/33fub5P/xMJlrJhS+VrVVIZxDBGPbYktO7ySiOs/FWJE1+5pjMpJbqt4a4FhpnsojmKHsY9FEg7mufN7AAAAFQDyJAzuwliAQKXAQzqa2KqmyPFhVQAAAIAVzilOrNogcZuA3y8sUg/wjnQG2rZhyfbMhSpc7NKjkctf3fdIGjQp7HUJlNA29TnMoiThNng3KvuGm4WtOQYi3KxIxAlom+2Rxm1RR5kYyvGK0hDW86ZXnhaCiuGxctS+rNf6QjJ8FVtUEG8v84xiHtOWh5FrlkEB3UcSFFwBAAAAAIBK8vb6wXY9J/KXv7e3X1lyg81EJma/UuFXcizaZrw2bAhiJ/P+AK3TGNcOF7ypTKCoSkRZdEMeYjx9ljCFHkgGuUpO6vyABai9CG9zpyaHAMbcQ3PlBeCws0l2rqRHay0eIACvX2xMhFXxXr8n6zJy0FiVQ2aRAb6/4OFhWR9rMQ=="
10-
11-
GERRIT_REPO="ssh://$SSH_USER@git.eclipse.org:29418/www.eclipse.org/jkube"
12-
135
BASEDIR=$(dirname "$BASH_SOURCE")
14-
TEMP_DIR=$(realpath "$BASEDIR/../temp")
156
WEB_DIR=$(realpath "$BASEDIR/..")
16-
ECLIPSE_REPO_DIR="$TEMP_DIR/jkube"
7+
ECLIPSE_REPO_DIR="$WEB_DIR/jkube-website-publish"
8+
9+
GIT_NAME=GitHub
1710

1811
function initEnvironment() {
19-
mkdir -p "$TEMP_DIR"
20-
mkdir -p ~/.ssh
21-
echo "$SSH_KEY" > ~/.ssh/id_rsa
22-
chmod 600 ~/.ssh/id_rsa
23-
for _eclipse_server in "${ECLIPSE_SERVERS[@]}" ; do
24-
grep -qxF "$_eclipse_server" ~/.ssh/known_hosts || echo "$_eclipse_server" >> ~/.ssh/known_hosts
25-
done
2612
git config --global user.email "$GIT_EMAIL"
2713
git config --global user.name "$GIT_NAME"
2814
}
2915

30-
function cleanUp() {
31-
rm -rf "$TEMP_DIR"
32-
}
33-
34-
function cloneAndPrepareEclipseRepo() {
35-
git clone "$GERRIT_REPO" "$ECLIPSE_REPO_DIR"
16+
function prepareEclipseRepo() {
3617
find "$ECLIPSE_REPO_DIR" -maxdepth 1 ! -path "$ECLIPSE_REPO_DIR" ! -name '.git' -exec rm -rf {} +
3718
}
3819

@@ -43,20 +24,20 @@ function build() {
4324

4425
function deploy() {
4526
cp -avr "$WEB_DIR/public/"* "$ECLIPSE_REPO_DIR"
27+
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" checkout --orphan temp-branch
4628
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" add "$ECLIPSE_REPO_DIR"
4729
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" commit -m "CI: Website updated" --signoff
48-
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" push origin master
30+
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" branch -D main
31+
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" branch -m main
32+
git --git-dir "$ECLIPSE_REPO_DIR/.git" --work-tree "$ECLIPSE_REPO_DIR" push -f origin main
4933
}
5034

5135
function error() {
5236
echo 'Error while deploying JKube website - Cleaning Up temporary files'
53-
cleanUp
5437
exit 1
5538
}
5639

57-
cleanUp
5840
initEnvironment
59-
cloneAndPrepareEclipseRepo
41+
prepareEclipseRepo
6042
build
6143
deploy
62-
cleanUp

0 commit comments

Comments
 (0)