Skip to content

Commit

Permalink
Merge pull request #65 from WolframResearch/feature/include-dependenc…
Browse files Browse the repository at this point in the history
…ies-as-release-files

Feature/include dependencies as release files
  • Loading branch information
rhennigan authored Oct 12, 2022
2 parents 8c1a48a + 8effdb0 commit feba1b7
Show file tree
Hide file tree
Showing 26 changed files with 3,145 additions and 2,111 deletions.
148 changes: 109 additions & 39 deletions .github/workflows/check-paclet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ env:
TEST_PUBLISHER_ID: ${{ secrets.TEST_PUBLISHER_ID }}
WOLFRAM_SYSTEM_ID: Linux-x86-64
WOLFRAMSCRIPT_ENTITLEMENTID: ${{ secrets.WOLFRAMSCRIPT_ENTITLEMENTID }}
ACTIONS_STEP_DEBUG: ${{ secrets.ACTIONS_STEP_DEBUG }}

concurrency:
group: ${{ github.ref }}
Expand All @@ -28,9 +29,17 @@ jobs:
runs-on: ubuntu-latest
container:
image: wolframresearch/wolframengine:latest
options: --user root
timeout-minutes: 10
options: --user root --privileged --init --ulimit core=-1
timeout-minutes: 20
steps:
- name: Setup debugging
if: env.ACTIONS_STEP_DEBUG
run: |
ulimit -c unlimited
mkdir -p /tmp/cores
chmod a+rwx /tmp/cores
sysctl -w kernel.core_pattern=/tmp/cores/core.%e.%p.%h.%t
- name: Checkout files
uses: actions/checkout@v3

Expand All @@ -40,30 +49,49 @@ jobs:
- name: Check paclet
run: wolframscript Scripts/CheckPaclet.wls

- name: Upload core dump
if: always() && env.ACTIONS_STEP_DEBUG
uses: actions/upload-artifact@v3
with:
name: check-core-dump
path: /tmp/cores
retention-days: 1
if-no-files-found: ignore

- name: Upload stack data
if: always() && env.PACLET_STACK_HISTORY
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: check-paclet-stacks-${{ env.WOLFRAM_SYSTEM_ID }}
name: check-paclet-stacks
path: ${{ env.PACLET_STACK_HISTORY }}
retention-days: 1
if-no-files-found: error

- name: Upload check results
if: always() && env.PACLET_CHECK_RESULTS
uses: actions/upload-artifact@v2
- name: Upload workflow values
if: always() && env.PACLET_WORKFLOW_VALUES
uses: actions/upload-artifact@v3
with:
name: check-paclet-results-${{ env.WOLFRAM_SYSTEM_ID }}
path: ${{ env.PACLET_CHECK_RESULTS }}
name: paclet-workflow-values
path: ${{ env.PACLET_WORKFLOW_VALUES }}
retention-days: 1
if-no-files-found: error

Build:
name: Build
runs-on: ubuntu-latest
container:
image: wolframresearch/wolframengine:latest
options: --user root
timeout-minutes: 10
options: --user root --privileged --init --ulimit core=-1
timeout-minutes: 20
steps:
- name: Setup debugging
if: env.ACTIONS_STEP_DEBUG
run: |
ulimit -c unlimited
mkdir -p /tmp/cores
chmod a+rwx /tmp/cores
sysctl -w kernel.core_pattern=/tmp/cores/core.%e.%p.%h.%t
- name: Checkout files
uses: actions/checkout@v3

Expand All @@ -73,20 +101,39 @@ jobs:
- name: Build paclet
run: wolframscript Scripts/BuildPaclet.wls

- name: Upload core dump
if: always() && env.ACTIONS_STEP_DEBUG
uses: actions/upload-artifact@v3
with:
name: build-core-dump
path: /tmp/cores/
retention-days: 1
if-no-files-found: ignore

- name: Upload stack data
if: always() && env.PACLET_STACK_HISTORY
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: build-paclet-stacks
path: ${{ env.PACLET_STACK_HISTORY }}
retention-days: 1
if-no-files-found: error

- name: Upload build artifacts
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: PacletBuildArtifact
path: ${{ env.PACLET_BUILD_DIR }}
if-no-files-found: error

- name: Upload workflow values
if: always() && env.PACLET_WORKFLOW_VALUES
uses: actions/upload-artifact@v3
with:
name: paclet-workflow-values
path: ${{ env.PACLET_WORKFLOW_VALUES }}
retention-days: 1
if-no-files-found: error

Test-Linux:
name: Test-Linux
Expand All @@ -102,9 +149,15 @@ jobs:
id: checkout-code-step
uses: actions/checkout@v3

- name: Download workflow values
uses: actions/download-artifact@v3
with:
name: paclet-workflow-values
path: .paclet-workflow-values

- name: Download MX build
id: download-mx-artifacts-step
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: PacletBuildArtifact
path: MXBuild
Expand All @@ -114,18 +167,20 @@ jobs:

- name: Upload stack data
if: always() && env.PACLET_STACK_HISTORY
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: test-paclet-stacks-${{ env.WOLFRAM_SYSTEM_ID }}
path: ${{ env.PACLET_STACK_HISTORY }}
retention-days: 1
if-no-files-found: error

- name: Upload test results
if: always() && env.PACLET_TEST_RESULTS
uses: actions/upload-artifact@v2
- name: Upload workflow values
if: always() && env.PACLET_WORKFLOW_VALUES
uses: actions/upload-artifact@v3
with:
name: test-paclet-results-${{ env.WOLFRAM_SYSTEM_ID }}
path: ${{ env.PACLET_TEST_RESULTS }}
name: paclet-workflow-values
path: ${{ env.PACLET_WORKFLOW_VALUES }}
retention-days: 1
if-no-files-found: error

Test-MacOSX:
Expand All @@ -144,9 +199,15 @@ jobs:
id: checkout-code-step
uses: actions/checkout@v3

- name: Download workflow values
uses: actions/download-artifact@v3
with:
name: paclet-workflow-values
path: .paclet-workflow-values

- name: RestoreCachedWolframEngine
id: cache-restore-step
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ env.WOLFRAMENGINE_INSTALLATION_DIRECTORY }}
key: wolframengine-${{ env.WOLFRAM_SYSTEM_ID }}-${{ env.WOLFRAMENGINE_CACHE_KEY }}
Expand All @@ -160,7 +221,7 @@ jobs:
- name: Download MX build
id: download-mx-artifacts-step
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: PacletBuildArtifact
path: MXBuild
Expand All @@ -175,21 +236,22 @@ jobs:

- name: Upload stack data
if: always() && env.PACLET_STACK_HISTORY
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: test-paclet-stacks-${{ env.WOLFRAM_SYSTEM_ID }}
path: ${{ env.PACLET_STACK_HISTORY }}
retention-days: 1
if-no-files-found: error

- name: Upload test results
if: always() && env.PACLET_TEST_RESULTS
uses: actions/upload-artifact@v2
- name: Upload workflow values
if: always() && env.PACLET_WORKFLOW_VALUES
uses: actions/upload-artifact@v3
with:
name: test-paclet-results-${{ env.WOLFRAM_SYSTEM_ID }}
path: ${{ env.PACLET_TEST_RESULTS }}
name: paclet-workflow-values
path: ${{ env.PACLET_WORKFLOW_VALUES }}
retention-days: 1
if-no-files-found: error


Test-Windows:
name: Test-Windows
needs: [Build]
Expand All @@ -206,9 +268,15 @@ jobs:
id: checkout-code-step
uses: actions/checkout@v3

- name: Download workflow values
uses: actions/download-artifact@v3
with:
name: paclet-workflow-values
path: .paclet-workflow-values

- name: RestoreCachedWolframEngine
id: cache-restore-step
uses: actions/cache@v2
uses: actions/cache@v3
env:
WOLFRAMENGINE_INSTALLATION_DIRECTORY: '${{ runner.temp }}\WolframEngine'
with:
Expand Down Expand Up @@ -245,7 +313,7 @@ jobs:
- name: Download MX build
id: download-mx-artifacts-step
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: PacletBuildArtifact
path: MXBuild
Expand All @@ -260,16 +328,18 @@ jobs:

- name: Upload stack data
if: always() && env.PACLET_STACK_HISTORY
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: test-paclet-stacks-${{ env.WOLFRAM_SYSTEM_ID }}
path: ${{ env.PACLET_STACK_HISTORY }}
retention-days: 1
if-no-files-found: error
- name: Upload test results
if: always() && env.PACLET_TEST_RESULTS
uses: actions/upload-artifact@v2

- name: Upload workflow values
if: always() && env.PACLET_WORKFLOW_VALUES
uses: actions/upload-artifact@v3
with:
name: test-paclet-results-${{ env.WOLFRAM_SYSTEM_ID }}
path: ${{ env.PACLET_TEST_RESULTS }}
if-no-files-found: error
name: paclet-workflow-values
path: ${{ env.PACLET_WORKFLOW_VALUES }}
retention-days: 1
if-no-files-found: error
Loading

0 comments on commit feba1b7

Please sign in to comment.