Skip to content

Commit 76cbe2a

Browse files
Feature/synchronizeDocumentation (#256)
1 parent 6969bbc commit 76cbe2a

1 file changed

Lines changed: 81 additions & 0 deletions

File tree

.github/workflows/syncDocs.yml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
env:
2+
TUTORIAL_REPO: 'devonfw-tutorials/tutorials'
3+
BUILD_USER: ${{ secrets.BUILD_USER }}
4+
BUILD_USER_PASSWD: ${{ secrets.BUILD_USER_PASSWD }}
5+
BUILD_USER_EMAIL: ${{ secrets.BUILD_USER_EMAIL }}
6+
on:
7+
push:
8+
branches:
9+
- main
10+
name: Sync Docs
11+
jobs:
12+
update-wiki:
13+
if: ${{github.repository == 'devonfw-tutorials/tutorial-compiler'}}
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: setup variables
17+
run: |
18+
echo "ORG=$(echo '${{ github.repository }}' | awk -F '/' '{print $1}')" >> $GITHUB_ENV
19+
echo "REPO_COMPILER_SOURCE=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}')" >> $GITHUB_ENV
20+
echo "REPO_COMPILER_DEST=$(echo '${{ github.repository }}' | awk -F '/' '{print $2}').wiki" >> $GITHUB_ENV
21+
echo "REPO_TUTORIAL_DEST=$(echo '${TUTORIAL_REPO}' | awk -F '/' '{print $2}').wiki" >> $GITHUB_ENV
22+
shell: bash
23+
- name: Checkout ${REPO_COMPILER_SOURCE} Repository
24+
run: git clone https://github.com/${ORG}/${REPO_COMPILER_SOURCE}.git ${REPO_COMPILER_SOURCE}
25+
- name: Checkout ${REPO_COMPILER_DEST} Repository
26+
run: git clone https://github.com/${ORG}/${REPO_COMPILER_DEST}.git ${REPO_COMPILER_DEST}
27+
- name: Checkout ${REPO_TUTORIAL_DEST} Repository
28+
run: git clone https://github.com/${ORG}/${REPO_TUTORIAL_DEST}.git ${REPO_TUTORIAL_DEST}
29+
- name: Copy docs and consolidate links
30+
run: |
31+
cp -rf ${REPO_COMPILER_SOURCE}/documentation/* ${REPO_COMPILER_DEST}/
32+
cd ${REPO_COMPILER_DEST}
33+
grep -lr "link:[a-zA-Z0-9_.-]*.md.*" .| xargs -r sed -i "s/.md//g"
34+
echo ">"
35+
git diff-index --quiet HEAD & git status -s
36+
echo "<"
37+
git status
38+
echo ">"
39+
git diff-index --quiet HEAD & git status -s
40+
echo "<"
41+
echo "TO_BE_CANCELLED=$(if [[ $(git diff-index --quiet HEAD & git status -s) ]]; then echo "false"; else echo "true"; fi)" >> $GITHUB_ENV
42+
echo "$TO_BE_CANCELLED"
43+
- name: Copy docs and consolidate links to ${REPO_TUTORIAL_DEST} Repository
44+
if: ${{ env.TO_BE_CANCELLED == 'false' }}
45+
run: |
46+
cp -rf ${REPO_COMPILER_SOURCE}/documentation/* ${REPO_TUTORIAL_DEST}/
47+
cd ${REPO_TUTORIAL_DEST}
48+
grep -lr "link:[a-zA-Z0-9_.-]*.md.*" .| xargs -r sed -i "s/.md//g"
49+
echo ">"
50+
git diff-index --quiet HEAD & git status -s
51+
echo "<"
52+
git status
53+
echo ">"
54+
git diff-index --quiet HEAD & git status -s
55+
echo "<"
56+
echo "TO_BE_CANCELLED=$(if [[ $(git diff-index --quiet HEAD & git status -s) ]]; then echo "false"; else echo "true"; fi)" >> $GITHUB_ENV
57+
echo "$TO_BE_CANCELLED"
58+
- name: setup git user
59+
if: ${{ env.TO_BE_CANCELLED == 'false' }}
60+
run: |
61+
git config --global user.email ${BUILD_USER_EMAIL}
62+
git config --global user.name ${BUILD_USER}
63+
- name: Sync Wiki
64+
if: ${{ env.TO_BE_CANCELLED == 'false' }}
65+
run: |
66+
cd ${REPO_COMPILER_DEST}
67+
git status
68+
git add .
69+
git commit -m "${REPO_COMPILER_SOURCE} documentation | GitHub Actions $GITHUB_WORKFLOW $GITHUB_RUN_NUMBER"
70+
git remote add origin-wiki "https://${BUILD_USER}:${BUILD_USER_PASSWD}@github.com/${ORG}/${REPO_COMPILER_DEST}.git"
71+
git push origin-wiki main
72+
- name: Sync Wiki ${REPO_TUTORIAL_DEST} Repository
73+
if: ${{ env.TO_BE_CANCELLED == 'false' }}
74+
run: |
75+
cd ${REPO_TUTORIAL_DEST}
76+
git status
77+
git add .
78+
git commit -m "${REPO_COMPILER_SOURCE} documentation | GitHub Actions $GITHUB_WORKFLOW $GITHUB_RUN_NUMBER"
79+
git remote add origin-wiki "https://${BUILD_USER}:${BUILD_USER_PASSWD}@github.com/${ORG}/${REPO_TUTORIAL_DEST}.git"
80+
git push origin-wiki main
81+

0 commit comments

Comments
 (0)