From a90b7e9972d9be42031d8f716d0a65769e1ee84c Mon Sep 17 00:00:00 2001 From: Dilum Aluthge Date: Mon, 14 Aug 2023 22:23:52 -0400 Subject: [PATCH] Debugging what happens to the `mtime`s on `ubuntu-latest` --- .github/workflows/backup.yml | 34 --------- .github/workflows/checkin.yml | 36 --------- .github/workflows/codeql-analysis.yml | 74 ------------------- .../workflows/example-builds-defaultarch.yml | 43 ----------- .../example-builds-nightly-defaultarch.yml | 41 ---------- .github/workflows/example-builds-nightly.yml | 49 ------------ .github/workflows/example-builds.yml | 49 ------------ .github/workflows/mtime.yml | 62 ++++++++++++++++ 8 files changed, 62 insertions(+), 326 deletions(-) delete mode 100644 .github/workflows/backup.yml delete mode 100644 .github/workflows/checkin.yml delete mode 100644 .github/workflows/codeql-analysis.yml delete mode 100644 .github/workflows/example-builds-defaultarch.yml delete mode 100644 .github/workflows/example-builds-nightly-defaultarch.yml delete mode 100644 .github/workflows/example-builds-nightly.yml delete mode 100644 .github/workflows/example-builds.yml create mode 100644 .github/workflows/mtime.yml diff --git a/.github/workflows/backup.yml b/.github/workflows/backup.yml deleted file mode 100644 index ab852e6d..00000000 --- a/.github/workflows/backup.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: Backup - -on: - schedule: - - cron: '5 4 * * 0' - - workflow_dispatch: - -jobs: - backup: - runs-on: ubuntu-20.04 - timeout-minutes: 60 - - steps: - - name: Configure cache - uses: actions/cache@v3 - with: - path: | - ${{ env.GITHUB_WORKSPACE }} - ~/.cache/restic - key: ${{ runner.os }} - - - name: Install the correct Python version - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - - name: Run backup action - uses: julia-actions/restic-action@main - env: # Options: https://restic.readthedocs.io/en/latest/040_backup.html#environment-variables - RESTIC_REPOSITORY: b2:${{ secrets.B2_BUCKET }}:${{ github.repository }} - RESTIC_PASSWORD: ${{ secrets.RESTIC_PASSWORD }} - B2_ACCOUNT_ID: ${{ secrets.B2_ACCOUNT_ID }} - B2_ACCOUNT_KEY: ${{ secrets.B2_ACCOUNT_KEY }} diff --git a/.github/workflows/checkin.yml b/.github/workflows/checkin.yml deleted file mode 100644 index 847bf39d..00000000 --- a/.github/workflows/checkin.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: "PR Checks" -on: [pull_request, push] - -concurrency: - # Skip intermediate builds: all builds except for builds on the `master`, `main`, or `release-*` branches - # Cancel intermediate builds: only pull request builds - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.ref != 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release-') || github.run_number }} - cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} - -jobs: - check_pr: - runs-on: ubuntu-latest - timeout-minutes: 60 - steps: - - uses: actions/checkout@v3 - - - uses: actions/setup-node@v3 - with: - node-version: 16 - - - name: "npm ci" - run: npm ci - - - name: "npm run build" - run: npm run build - - - name: "npm run test" - run: npm run test - - - name: "check for uncommitted changes" - # Ensure no changes, but ignore node_modules dir since dev/fresh ci deps installed. - run: | - git diff --exit-code --stat -- . ':!node_modules' \ - || (echo "##[error] found changed files after build. please 'npm run build && npm run format'" \ - "and check in all changes" \ - && exit 1) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml deleted file mode 100644 index d1293cb5..00000000 --- a/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,74 +0,0 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -# -# ******** NOTE ******** -# We have attempted to detect the languages in your repository. Please check -# the `language` matrix defined below to confirm you have the correct set of -# supported CodeQL languages. -# -name: "CodeQL" - -concurrency: - # Skip intermediate builds: all builds except for builds on the `master`, `main`, or `release-*` branches - # Cancel intermediate builds: only pull request builds - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.ref != 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release-') || github.run_number }} - cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} - -on: - push: - branches: [ master, releases/* ] - pull_request: - # The branches below must be a subset of the branches above - branches: [ master ] - schedule: - - cron: '32 22 * * 6' - -jobs: - analyze: - name: Analyze - runs-on: ubuntu-latest - timeout-minutes: 60 - - strategy: - fail-fast: false - matrix: - language: [ 'javascript' ] - # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ] - # Learn more: - # https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed - - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v2 - with: - languages: ${{ matrix.language }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - # queries: ./path/to/local/query, your-org/your-repo/queries@main - - # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). - # If this step fails, then you should remove it and run the build manually (see below) - - name: Autobuild - uses: github/codeql-action/autobuild@v2 - - # ℹī¸ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - - # ✏ī¸ If the Autobuild fails above, remove it and uncomment the following three lines - # and modify them (or add more) to build your code if your project - # uses a compiled language - - #- run: | - # make bootstrap - # make release - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/example-builds-defaultarch.yml b/.github/workflows/example-builds-defaultarch.yml deleted file mode 100644 index 048766e6..00000000 --- a/.github/workflows/example-builds-defaultarch.yml +++ /dev/null @@ -1,43 +0,0 @@ -name: Example builds (default arch) - -concurrency: - # Skip intermediate builds: all builds except for builds on the `master`, `main`, or `release-*` branches - # Cancel intermediate builds: only pull request builds - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.ref != 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release-') || github.run_number }} - cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} - -on: - push: - branches: ['main', 'master', 'releases/*'] - pull_request: - workflow_dispatch: - -jobs: - test: - runs-on: ${{ matrix.os }} - timeout-minutes: 60 - strategy: - fail-fast: false - matrix: - julia-version: ['1'] - os: [ubuntu-latest, macOS-latest, windows-latest] - - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 16 - - - name: "Install dependencies" - run: | - npm install - npm run build - npm run pack - - - name: "Set up Julia" - id: setup-julia - uses: ./ - with: - version: ${{ matrix.julia-version }} - - run: julia --version - - run: julia --compile=min -O0 -e 'import InteractiveUtils; InteractiveUtils.versioninfo()' diff --git a/.github/workflows/example-builds-nightly-defaultarch.yml b/.github/workflows/example-builds-nightly-defaultarch.yml deleted file mode 100644 index 42d9987b..00000000 --- a/.github/workflows/example-builds-nightly-defaultarch.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: Example builds (nightly, default arch) - -concurrency: - # Skip intermediate builds: all builds except for builds on the `master`, `main`, or `release-*` branches - # Cancel intermediate builds: only pull request builds - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.ref != 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release-') || github.run_number }} - cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} - -on: - push: - branches: ['main', 'master', 'releases/*'] - pull_request: - -jobs: - test: - runs-on: ${{ matrix.os }} - timeout-minutes: 60 - strategy: - fail-fast: false - matrix: - julia-version: [nightly, 1.9-nightly] - os: [ubuntu-latest, macOS-latest, windows-latest] - - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 16 - - - name: "Install dependencies" - run: | - npm install - npm run build - npm run pack - - - name: "Set up Julia (${{ matrix.julia-version }})" - uses: ./ - with: - version: ${{ matrix.julia-version }} - - run: julia --version - - run: julia --compile=min -O0 -e 'import InteractiveUtils; InteractiveUtils.versioninfo()' diff --git a/.github/workflows/example-builds-nightly.yml b/.github/workflows/example-builds-nightly.yml deleted file mode 100644 index 7f0a0db7..00000000 --- a/.github/workflows/example-builds-nightly.yml +++ /dev/null @@ -1,49 +0,0 @@ -name: Example builds (nightly) - -concurrency: - # Skip intermediate builds: all builds except for builds on the `master`, `main`, or `release-*` branches - # Cancel intermediate builds: only pull request builds - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.ref != 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release-') || github.run_number }} - cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} - -on: - push: - branches: ['main', 'master', 'releases/*'] - pull_request: - schedule: - - cron: '37 17 * * *' - -jobs: - test: - runs-on: ${{ matrix.os }} - timeout-minutes: 60 - strategy: - fail-fast: false - matrix: - julia-version: [nightly, 1.9-nightly] - julia-arch: [x64, x86] - os: [ubuntu-latest, macOS-latest, windows-latest] - # 32-bit Julia binaries are not available on macOS - exclude: - - os: macOS-latest - julia-arch: x86 - - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 16 - - - name: "Install dependencies" - run: | - npm install - npm run build - npm run pack - - - name: "Set up Julia (${{ matrix.julia-version }})" - uses: ./ - with: - version: ${{ matrix.julia-version }} - arch: ${{ matrix.julia-arch }} - - run: julia --version - - run: julia --compile=min -O0 -e 'import InteractiveUtils; InteractiveUtils.versioninfo()' diff --git a/.github/workflows/example-builds.yml b/.github/workflows/example-builds.yml deleted file mode 100644 index 7b94a5e0..00000000 --- a/.github/workflows/example-builds.yml +++ /dev/null @@ -1,49 +0,0 @@ -name: Example builds - -concurrency: - # Skip intermediate builds: all builds except for builds on the `master`, `main`, or `release-*` branches - # Cancel intermediate builds: only pull request builds - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.ref != 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release-') || github.run_number }} - cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} - -on: - push: - branches: ['main', 'master', 'releases/*'] - pull_request: - workflow_dispatch: - -jobs: - test: - runs-on: ${{ matrix.os }} - timeout-minutes: 60 - strategy: - fail-fast: false - matrix: - julia-version: ['1.0.5', '1.2', '^1.5.0-beta1', '1'] - julia-arch: [x64, x86] - os: [ubuntu-latest, macOS-latest, windows-latest] - # 32-bit Julia binaries are not available on macOS - exclude: - - os: macOS-latest - julia-arch: x86 - - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 16 - - - name: "Install dependencies" - run: | - npm install - npm run build - npm run pack - - - name: "Set up Julia" - id: setup-julia - uses: ./ - with: - version: ${{ matrix.julia-version }} - arch: ${{ matrix.julia-arch }} - - run: julia --version - - run: julia --compile=min -O0 -e 'import InteractiveUtils; InteractiveUtils.versioninfo()' diff --git a/.github/workflows/mtime.yml b/.github/workflows/mtime.yml new file mode 100644 index 00000000..5e02069f --- /dev/null +++ b/.github/workflows/mtime.yml @@ -0,0 +1,62 @@ +name: mtime +on: + pull_request: + # push: +permissions: + contents: read +jobs: + job-1: + runs-on: ubuntu-latest + timeout-minutes: 10 + strategy: + fail-fast: false + matrix: + julia-version: + - '1.8.5' + - '1.9.2' + steps: + - uses: actions/checkout@v3 + with: + persist-credentials: false + - run: sleep 3 + - run: rm -rfv ~/.julia + - uses: julia-actions/setup-julia@v1.9.2 + with: + version: '${{ matrix.julia-version }}' + - run: | + MAJMIN = "$(Base.VERSION.major).$(Base.VERSION.minor)" + file = joinpath(dirname(Sys.BINDIR), "share", "julia", "stdlib", "v$(MAJMIN)", "MbedTLS_jll", "src", "MbedTLS_jll.jl") + + # Print mtime + # On macOS, use `stat -f %m` + # On Linux, use `stat -c %Y` + run(`stat -c %Y $(file)`) + shell: julia --startup-file=no --color=yes {0} + job-2: + runs-on: ubuntu-latest + timeout-minutes: 10 + needs: [job-1] + strategy: + fail-fast: false + matrix: + julia-version: + - '1.8.5' + - '1.9.2' + steps: + - uses: actions/checkout@v3 + with: + persist-credentials: false + - run: sleep 3 + - run: rm -rfv ~/.julia + - uses: julia-actions/setup-julia@v1.9.2 + with: + version: '${{ matrix.julia-version }}' + - run: | + MAJMIN = "$(Base.VERSION.major).$(Base.VERSION.minor)" + file = joinpath(dirname(Sys.BINDIR), "share", "julia", "stdlib", "v$(MAJMIN)", "MbedTLS_jll", "src", "MbedTLS_jll.jl") + + # Print mtime + # On macOS, use `stat -f %m` + # On Linux, use `stat -c %Y` + run(`stat -c %Y $(file)`) + shell: julia --startup-file=no --color=yes {0}