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