Skip to content

Adds book downloader #337

Adds book downloader

Adds book downloader #337

Workflow file for this run

# 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.1.2
- 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/hello-world-issue-1.pdf, issues/hello-world-issue-2.pdf, issues/hello-world-issue-${{ env.ISSUE_MINUS_SIX }}.pdf, issues/hello-world-issue-${{ env.ISSUE_MINUS_FIVE }}.pdf, issues/hello-world-issue-${{ env.ISSUE_MINUS_ONE }}.pdf, issues/hello-world-issue-${{ 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.1.2
- 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_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.1.2
- 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_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