-
Notifications
You must be signed in to change notification settings - Fork 3
142 lines (126 loc) · 6.61 KB
/
testing.yml
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
# This is a basic workflow to help you get started with Actions
# all scripts are baased on the testing scripts for MagPiDownloader by @rubemlrm
name: CI
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the main branch
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
powershell:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4.2.0
- uses: pCYSl5EDgo/cat@master
id: read_recent
with:
path: regular-issues.txt
- run: |
echo "ISSUE_NUMBER=${{ steps.read_recent.outputs.text }}" >> $GITHUB_ENV
echo "ISSUE_MINUS_ONE=$((${{ steps.read_recent.outputs.text }}-1))" >> $GITHUB_ENV
echo "ISSUE_MINUS_FIVE=$((${{ steps.read_recent.outputs.text }}-5))" >> $GITHUB_ENV
echo "ISSUE_MINUS_SIX=$((${{ steps.read_recent.outputs.text }}-6))" >> $GITHUB_ENV
shell: bash
- name: Download Issues With start limit
id: normalIssuesWithStartLimit
shell: pwsh
run: ./helloworld-downloader.ps1 -f ${{ env.ISSUE_MINUS_ONE }}
- name: Download Issues With end limit
id: normalIssuesWithEndLimit
shell: pwsh
run: ./helloworld-downloader.ps1 -l 2
- name: Download Issues with start and end limit
id: normalIssuesWithRange
shell: pwsh
run: ./helloworld-downloader.ps1 -f ${{ env.ISSUE_MINUS_SIX }} -l ${{ env.ISSUE_MINUS_FIVE }}
- name: lslah
run: Get-ChildItem issues/
- name: "Check file existence Windows"
id: check_files
uses: andstor/file-existence-action@v3.0.0
with:
files: "issues/HelloWorld_1.pdf, issues/HelloWorld_2.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_SIX }}.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_FIVE }}.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_ONE }}.pdf, issues/HelloWorld_${{ env.ISSUE_NUMBER }}.pdf"
allow_failure: false
- name: File exists
if: steps.check_files.outputs.files_exists == 'false'
run: exit 1
bash-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.0
- uses: pCYSl5EDgo/cat@master
id: read_recent
with:
path: regular-issues.txt
- run: |
echo "ISSUE_NUMBER=${{ steps.read_recent.outputs.text }}" >> $GITHUB_ENV
echo "ISSUE_MINUS_ONE=$((${{ steps.read_recent.outputs.text }}-1))" >> $GITHUB_ENV
echo "ISSUE_MINUS_FIVE=$((${{ steps.read_recent.outputs.text }}-5))" >> $GITHUB_ENV
echo "ISSUE_MINUS_SIX=$((${{ steps.read_recent.outputs.text }}-6))" >> $GITHUB_ENV
- name: Download Issues with end limit
id: normalIssuesWithEndLimit
run: bash ./helloworld-downloader.sh -l 2
- name: Download Issues with start limit
id: normalIssuesWithStartLimit
run: bash ./helloworld-downloader.sh -f ${{ env.ISSUE_MINUS_ONE }}
- name: Download Issues with start and end limit
id: normalIssuesWithRange
run: bash ./helloworld-downloader.sh -f ${{ env.ISSUE_MINUS_SIX }} -l ${{ env.ISSUE_MINUS_FIVE }}
- name: download all books
id: downloadallbooks
run: ./helloworld-books-downloader.sh
- name: lslah
run: ls -lah issues/
- name: "Check file existence Linux"
id: check_files
uses: andstor/file-existence-action@v3.0.0
with:
files: "issues/HelloWorld_1.pdf, issues/HelloWorld_2.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_SIX }}.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_FIVE }}.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_ONE }}.pdf, issues/HelloWorld_${{ env.ISSUE_NUMBER }}.pdf, special-issues/Hello_World_The_Big_Book_of_Pedagogy.pdf, special-issues/HelloWorld_The_Big_Book_of_Computing_Content.pdf"
# that should be the normal one, but #13 and #14 are named wrong: HW_13_Digital_Edition_V3.pdf + HelloWorld_14_digital.pdf
# files: "issues/HelloWorld01.pdf, issues/HelloWorld02.pdf, issues/HelloWorld${{ env.ISSUE_MINUS_SIX }}.pdf, issues/HelloWorld${{ env.ISSUE_MINUS_FIVE }}.pdf, issues/HelloWorld${{ env.ISSUE_MINUS_ONE }}.pdf, issues/HelloWorld${{ env.ISSUE_NUMBER }}.pdf"
allow_failure: false
- name: File exists
if: steps.check_files.outputs.files_exists == 'false'
run: exit 1
bash-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4.2.0
- uses: pCYSl5EDgo/cat@master
id: read_recent
with:
path: regular-issues.txt
- run: |
echo "ISSUE_NUMBER=${{ steps.read_recent.outputs.text }}" >> $GITHUB_ENV
echo "ISSUE_MINUS_ONE=$((${{ steps.read_recent.outputs.text }}-1))" >> $GITHUB_ENV
echo "ISSUE_MINUS_FIVE=$((${{ steps.read_recent.outputs.text }}-5))" >> $GITHUB_ENV
echo "ISSUE_MINUS_SIX=$((${{ steps.read_recent.outputs.text }}-6))" >> $GITHUB_ENV
- name: Download Issues with start limit
id: normalIssuesWithStartLimit
run: bash ./helloworld-downloader.sh -f ${{ env.ISSUE_MINUS_ONE }}
- name: Download Issues with end limit
id: normalIssuesWithEndLimit
run: bash ./helloworld-downloader.sh -l 2
- name: Download Issues with start and end limit
id: normalIssuesWithRange
run: bash ./helloworld-downloader.sh -f ${{ env.ISSUE_MINUS_SIX }} -l ${{ env.ISSUE_MINUS_FIVE }}
- name: download all books
id: downloadallbooks
run: ./helloworld-books-downloader.sh
- name: lsah
id: lslah
run: ls -lah issues/
- name: "Check file existence Mac"
id: check_files
uses: andstor/file-existence-action@v3.0.0
with:
files: "issues/HelloWorld_1.pdf, issues/HelloWorld_2.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_SIX }}.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_FIVE }}.pdf, issues/HelloWorld_${{ env.ISSUE_MINUS_ONE }}.pdf, issues/HelloWorld_${{ env.ISSUE_NUMBER }}.pdf, special-issues/Hello_World_The_Big_Book_of_Pedagogy.pdf, special-issues/HelloWorld_The_Big_Book_of_Computing_Content.pdf"
# that should be the normal one, but #13 and #14 are named wrong: HW_13_Digital_Edition_V3.pdf + HelloWorld_14_digital.pdf
# files: "issues/HelloWorld01.pdf, issues/HelloWorld02.pdf, issues/HelloWorld${{ env.ISSUE_MINUS_SIX }}.pdf, issues/HelloWorld${{ env.ISSUE_MINUS_FIVE }}.pdf, issues/HelloWorld${{ env.ISSUE_MINUS_ONE }}.pdf, issues/HelloWorld${{ env.ISSUE_NUMBER }}.pdf"
allow_failure: false
- name: File exists
if: steps.check_files.outputs.files_exists == 'false'
run: exit 1