Skip to content

Commit

Permalink
Stagger the jobs in a different workflow to see if it helps with lice…
Browse files Browse the repository at this point in the history
…nse activation
  • Loading branch information
datalogics-saharay committed Apr 17, 2024
1 parent e50ab9a commit 38446f5
Showing 1 changed file with 296 additions and 0 deletions.
296 changes: 296 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,296 @@
name: test-samples

on:
pull_request:
branches:
- develop
- main
push:
branches:
- develop
- main

env:
DOTNET_VERSION: '6.x'
MATRIX_DIR: |
Annotations/Annotations/
Annotations/InkAnnotations/
Annotations/LinkAnnotation/
Annotations/PolygonAnnotations/
Annotations/PolyLineAnnotations/
ContentCreation/AddElements/
ContentCreation/AddHeaderFooter/
ContentCreation/Clips/
ContentCreation/CreateBookmarks/
ContentCreation/GradientShade/
ContentCreation/MakeDocWithCalGrayColorSpace/
ContentCreation/MakeDocWithCalRGBColorSpace/
ContentCreation/MakeDocWithDeviceNColorSpace/
ContentCreation/MakeDocWithICCBasedColorSpace/
ContentCreation/MakeDocWithIndexedColorSpace/
ContentCreation/MakeDocWithLabColorSpace/
ContentCreation/MakeDocWithSeparationColorSpace/
ContentCreation/NameTrees/
ContentCreation/NumberTrees/
ContentCreation/RemoteGoToActions/
ContentCreation/WriteNChannelTiff/
ContentModification/Action/
ContentModification/AddCollection/
ContentModification/AddQRCode/
ContentModification/ChangeLayerConfiguration/
ContentModification/ChangeLinkColors/
ContentModification/CreateLayer/
ContentModification/ExtendedGraphicStates/
ContentModification/FlattenTransparency/
ContentModification/LaunchActions/
ContentModification/MergePDF/
ContentModification/PageLabels/
ContentModification/PDFObject/
ContentModification/UnderlinesAndHighlights/
ContentModification/Watermark/
DocumentConversion/ColorConvertDocument/
DocumentConversion/ConvertToOffice/
DocumentConversion/CreateDocFromXPS/
DocumentConversion/Factur-XConverter/
DocumentConversion/PDFAConverter/
DocumentConversion/PDFXConverter/
DocumentConversion/ZUGFeRDConverter/
DocumentOptimization/PDFOptimize/
Images/DocToImages/
Images/DrawSeparations/
Images/DrawToBitmap/
Images/EPSSeparations/
Images/GetSeparatedImages/
Images/ImageEmbedICCProfile/
Images/ImageExport/
Images/ImageExtraction/
Images/ImageFromStream/
Images/ImageImport/
Images/ImageResampling/
Images/ImageSoftMask/
Images/OutputPreview/
Images/RasterizePage/
InformationExtraction/ListBookmarks/
InformationExtraction/ListInfo/
InformationExtraction/ListLayers/
InformationExtraction/ListPaths/
InformationExtraction/Metadata/
OpticalCharacterRecognition/AddTextToDocument/
OpticalCharacterRecognition/AddTextToImage/
Other/MemoryFileSystem/
Other/StreamIO/
Security/AddRegexRedaction/
Security/Redactions/
Text/AddGlyphs/
Text/AddUnicodeText/
Text/AddVerticalText/
Text/ExtractAcroFormFieldData/
Text/ExtractCJKTextByPatternMatch/
Text/ExtractTextByPatternMatch/
Text/ExtractTextByRegion/
Text/ExtractTextFromAnnotations/
Text/ExtractTextFromMultiRegions/
Text/ExtractTextPreservingStyleAndPositionInfo/
Text/ListWords/
Text/RegexExtractText/
Text/RegexTextSearch/
Text/TextExtract/
jobs:
run-samples-windows:
runs-on: windows-latest
defaults:
run:
shell: bash
strategy:
fail-fast: false
matrix:
dir: ${{ split(env.MATRIX_DIR, '\n') }}
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Build samples
working-directory: ${{ matrix.dir }}
run: |
dotnet build -c Release *.csproj
- name: Run samples
working-directory: ${{ matrix.dir }}
run: |
sample_name=$(basename "$PWD")
if [[ "$sample_name" == "DocToImages" ]]; then
bin/Release/net6.0/$sample_name.exe -format=png $HOME/.nuget/packages/adobe.pdf.library.sampleinput/1.0.0/build/Resources/Sample_Input/ducky.pdf
else
bin/Release/net6.0/$sample_name.exe
fi
- name: Set sample_name variable
id: set-sample-name
run: echo "SAMPLE_NAME=$(basename "$PWD")" >> "$GITHUB_ENV"

- name: Save artifacts
uses: actions/upload-artifact@v4
with:
name: output-${{ runner.os }}-${{ env.SAMPLE_NAME }}
path: |
${{ matrix.dir }}/*.docx
${{ matrix.dir }}/*.xslx
${{ matrix.dir }}/*.pptx
${{ matrix.dir }}/*.pdf
${{ matrix.dir }}/*.tif
${{ matrix.dir }}/*.png
${{ matrix.dir }}/*.jpg
${{ matrix.dir }}/*.eps
${{ matrix.dir }}/*.tiff
${{ matrix.dir }}/*.bmp
${{ matrix.dir }}/*.gif
${{ matrix.dir }}/*.json
${{ matrix.dir }}/*.txt
${{ matrix.dir }}/*.csv
- name: List files
run: ls ${{ matrix.dir }}

run-samples-ubuntu:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
dir: ${{ split(env.MATRIX_DIR, '\n') }}
needs: [run-samples-windows]
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Setup Microsoft Core Fonts
run: |
sample_name=$(basename "$PWD")
case "$sample_name" in
"AddHeaderFooter" | "AddElements" | "MakeDocWithCalGrayColorSpace" | "MakeDocWithCalRGBColorSpace" | "MakeDocWithDeviceNColorSpace" | "MakeDocWithICCBasedColorSpace" | "MakeDocWithIndexedColorSpace" | "MakeDocWithLabColorSpace" | "MakeDocWithSeparationColorSpace" | "ExtendedGraphicStates" | "AddGlyphs" | "AddUnicodeText")
echo 'ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true' | sudo debconf-set-selections
sudo apt-get install -y ttf-mscorefonts-installer
;;
esac
- name: Build samples
working-directory: ${{ matrix.dir }}
run: |
dotnet build -c Release *.csproj
- name: Run samples
working-directory: ${{ matrix.dir }}
run: |
sample_name=$(basename "$PWD")
if [[ "$sample_name" == "Redactions" && "${{ matrix.os }}" == 'ubuntu-latest' ]]; then
echo "Not available on this os"
else
if [[ "$sample_name" == "DocToImages" ]]; then
dotnet bin/Release/net6.0/$sample_name.dll -format=png $HOME/.nuget/packages/adobe.pdf.library.sampleinput/1.0.0/build/Resources/Sample_Input/ducky.pdf
else
dotnet bin/Release/net6.0/$sample_name.dll
fi
- name: Set sample_name variable
id: set-sample-name
run: echo "SAMPLE_NAME=$(basename "$PWD")" >> "$GITHUB_ENV"

- name: Save artifacts
uses: actions/upload-artifact@v4
with:
name: output-${{ runner.os }}-${{ env.SAMPLE_NAME }}
path: |
${{ matrix.dir }}/*.docx
${{ matrix.dir }}/*.xslx
${{ matrix.dir }}/*.pptx
${{ matrix.dir }}/*.pdf
${{ matrix.dir }}/*.tif
${{ matrix.dir }}/*.png
${{ matrix.dir }}/*.jpg
${{ matrix.dir }}/*.eps
${{ matrix.dir }}/*.tiff
${{ matrix.dir }}/*.bmp
${{ matrix.dir }}/*.gif
${{ matrix.dir }}/*.json
${{ matrix.dir }}/*.txt
${{ matrix.dir }}/*.csv
- name: List files
run: ls ${{ matrix.dir }}

run-samples-macos:
runs-on: macos-14
strategy:
matrix:
dir: ${{ split(env.MATRIX_DIR, '\n') }}
needs: [run-samples-ubuntu]
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Build samples
working-directory: ${{ matrix.dir }}
run: |
sample_name=$(basename "$PWD")
if [[ ("$sample_name" != "ConvertToOffice" && "$sample_name" != "CreateDocFromXPS") || "${{ matrix.os }}" != 'macos-14' ]]; then
dotnet build -c Release *.csproj
else
echo "Not available on this os"
fi
- name: Run samples
working-directory: ${{ matrix.dir }}
run: |
sample_name=$(basename "$PWD")
if [[ ("$sample_name" != "ConvertToOffice" && "$sample_name" != "CreateDocFromXPS") || "${{ matrix.os }}" != 'macos-14' ]]; then
if [[ "$sample_name" == "DocToImages" ]]; then
dotnet bin/Release/net6.0/$sample_name.dll -format=png $HOME/.nuget/packages/adobe.pdf.library.sampleinput/1.0.0/build/Resources/Sample_Input/ducky.pdf
else
dotnet bin/Release/net6.0/$sample_name.dll
fi
else
echo "Not available on this os"
fi
- name: Set sample_name variable
id: set-sample-name
run: echo "SAMPLE_NAME=$(basename "$PWD")" >> "$GITHUB_ENV"

- name: Save artifacts
uses: actions/upload-artifact@v4
with:
name: output-${{ runner.os }}-${{ env.SAMPLE_NAME }}
path: |
${{ matrix.dir }}/*.docx
${{ matrix.dir }}/*.xslx
${{ matrix.dir }}/*.pptx
${{ matrix.dir }}/*.pdf
${{ matrix.dir }}/*.tif
${{ matrix.dir }}/*.png
${{ matrix.dir }}/*.jpg
${{ matrix.dir }}/*.eps
${{ matrix.dir }}/*.tiff
${{ matrix.dir }}/*.bmp
${{ matrix.dir }}/*.gif
${{ matrix.dir }}/*.json
${{ matrix.dir }}/*.txt
${{ matrix.dir }}/*.csv
- name: List files
run: ls ${{ matrix.dir }}

0 comments on commit 38446f5

Please sign in to comment.