Skip to content

Commit c7643a3

Browse files
authored
Copier update: CI success check (#84)
Pull in upstream template changes Tested in downstream repo <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated development tools and dependencies (Python, Node packages, linters, formatters, GitHub Actions). * Upgraded Docker development environment base image and Python features. * Enhanced CI/CD workflows with improved job validation logic. * Updated Python version from 3.13.2 to 3.13.9 for CI testing. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
1 parent 52ce394 commit c7643a3

File tree

28 files changed

+160
-135
lines changed

28 files changed

+160
-135
lines changed

.copier-answers.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# Changes here will be overwritten by Copier
2-
_commit: v0.0.94
2+
_commit: v0.0.97
33
_src_path: gh:LabAutomationAndScreening/copier-base-template.git
44
description: Copier template for creating Python libraries and executables
55
install_claude_cli: false
66
python_ci_versions:
77
- 3.12.7
8-
- 3.13.2
8+
- 3.13.9
99
python_version: 3.12.7
1010
repo_name: copier-python-package-template
1111
repo_org_name: LabAutomationAndScreening

.devcontainer/Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
# base image tags available at https://mcr.microsoft.com/v2/devcontainers/universal/tags/list
22
# added the platform flag to override any local settings since this image is only compatible with linux/amd64. since this image is only x64 compatible, suppressing the hadolint rule
33
# hadolint ignore=DL3029
4-
FROM --platform=linux/amd64 mcr.microsoft.com/devcontainers/universal:5.1.1-noble
4+
FROM --platform=linux/amd64 mcr.microsoft.com/devcontainers/universal:5.1.4-noble
55

66
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
77

88
# temporary hack until yarn updates its GPG key
9-
RUN rm /etc/apt/sources.list.d/yarn.list || true
9+
RUN rm /etc/apt/sources.list.d/yarn.list || true && \
10+
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | tee /etc/apt/keyrings/yarn-archive-keyring.gpg > /dev/null
1011

1112
RUN apt-get update -y && apt-get install -y \
1213
"bash-completion=$(apt-cache madison bash-completion | awk '{print $3}' | grep '^1:2.11' | head -n 1)" --no-install-recommends \

.devcontainer/devcontainer.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"service": "devcontainer",
44
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
55
"features": {
6-
"ghcr.io/devcontainers/features/python:1.7.1": {
6+
"ghcr.io/devcontainers/features/python:1.8.0": {
77
// https://github.com/devcontainers/features/blob/main/src/python/devcontainer-feature.json
88
"version": "3.12.7",
99
"installTools": false,
@@ -16,24 +16,24 @@
1616
"extensions": [
1717
// basic tooling
1818
// "eamodio.gitlens@15.5.1",
19-
"coderabbit.coderabbit-vscode@0.16.6",
19+
"coderabbit.coderabbit-vscode@0.17.0",
2020
"ms-vscode.live-server@0.5.2025051301",
2121
"MS-vsliveshare.vsliveshare@1.0.5905",
2222
"github.copilot@1.388.0",
23-
"github.copilot-chat@0.36.2026010502",
23+
"github.copilot-chat@0.38.2026022001",
2424

2525
// Python
26-
"ms-python.python@2025.21.2026010501",
27-
"ms-python.vscode-pylance@2025.10.100",
26+
"ms-python.python@2026.2.2026021801",
27+
"ms-python.vscode-pylance@2026.1.1",
2828
"ms-vscode-remote.remote-containers@0.414.0",
29-
"charliermarsh.ruff@2025.32.0",
29+
"charliermarsh.ruff@2026.36.0",
3030

3131
// Misc file formats
3232
"bierner.markdown-mermaid@1.29.0",
3333
"samuelcolvin.jinjahtml@0.20.0",
3434
"tamasfe.even-better-toml@0.19.2",
3535
"emilast.LogFileHighlighter@3.3.3",
36-
"esbenp.prettier-vscode@11.0.2"
36+
"esbenp.prettier-vscode@12.3.0"
3737
],
3838
"settings": {
3939
"editor.accessibilitySupport": "off", // turn off sounds
@@ -58,5 +58,5 @@
5858
"initializeCommand": "sh .devcontainer/initialize-command.sh",
5959
"onCreateCommand": "sh .devcontainer/on-create-command.sh",
6060
"postStartCommand": "sh .devcontainer/post-start-command.sh"
61-
// Devcontainer context hash (do not manually edit this, it's managed by a pre-commit hook): 69bb472f # spellchecker:disable-line
61+
// Devcontainer context hash (do not manually edit this, it's managed by a pre-commit hook): 91027588 # spellchecker:disable-line
6262
}

.devcontainer/install-ci-tooling.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77
import tempfile
88
from pathlib import Path
99

10-
UV_VERSION = "0.9.26"
11-
PNPM_VERSION = "10.28.1"
12-
COPIER_VERSION = "==9.11.2"
10+
UV_VERSION = "0.10.4"
11+
PNPM_VERSION = "10.30.0"
12+
COPIER_VERSION = "==9.11.3"
1313
COPIER_TEMPLATE_EXTENSIONS_VERSION = "==0.3.3"
1414
PRE_COMMIT_VERSION = "4.5.1"
1515
GITHUB_WINDOWS_RUNNER_BIN_PATH = r"C:\Users\runneradmin\.local\bin"

.github/actions/update-devcontainer-hash/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ runs:
2424
shell: bash
2525

2626
- name: Checkout code
27-
uses: actions/checkout@v6.0.1
27+
uses: actions/checkout@v6.0.2
2828
with:
2929
persist-credentials: true
3030
fetch-depth: 1

.github/pull_request_template.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
## Link to Issue or Message thread
1+
## Link to Issue or Message thread
22

33

44

5-
## Why is this change necessary?
5+
## Why is this change necessary?
66

77

88

9-
## How does this change address the issue?
9+
## How does this change address the issue?
1010

1111

1212

13-
## What side effects does this change have?
13+
## What side effects does this change have?
1414

1515

1616

17-
## How is this change tested?
17+
## How is this change tested?
1818

1919

2020

21-
## Other
21+
## Other

.github/reusable_workflows/build-docker-image.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ jobs:
6666
shell: bash
6767

6868
- name: Checkout code
69-
uses: actions/checkout@v6.0.1
69+
uses: actions/checkout@v6.0.2
7070
with:
7171
persist-credentials: false
7272

.github/workflows/ci.yaml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040

4141
- 3.12.7
4242

43-
- 3.13.2
43+
- 3.13.9
4444

4545
copier: [
4646
'--data-file tests/copier_data/data1.yaml',
@@ -56,7 +56,7 @@ jobs:
5656

5757
steps:
5858
- name: Checkout code
59-
uses: actions/checkout@v6.0.1
59+
uses: actions/checkout@v6.0.2
6060
with:
6161
persist-credentials: false
6262

@@ -151,9 +151,14 @@ jobs:
151151
if: always()
152152
steps:
153153
- name: fail if prior job failure
154-
if: needs.lint-matrix.result != 'success'
155154
run: |
156-
exit 1
155+
success_pattern="^(skipped|success)$" # these are the possibilities: https://docs.github.com/en/actions/reference/workflows-and-actions/contexts#needs-context
156+
157+
if [[ ! "${{ needs.lint-matrix.result }}" =~ $success_pattern ]]; then
158+
echo "❌ One or more jobs did not finish with skipped or success"
159+
exit 1
160+
fi
161+
echo "✅ All jobs finished with skipped or success"
157162
- name: Mark updated dependabot hash commit as succeeded
158163
if: needs.get-values.outputs.dependabot-commit-created == 'true'
159164
env:

.github/workflows/get-values.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
JSON
3636
3737
- name: Checkout code
38-
uses: actions/checkout@v6.0.1
38+
uses: actions/checkout@v6.0.2
3939
with:
4040
persist-credentials: false
4141

.github/workflows/pre-commit.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,14 @@ jobs:
3333
steps:
3434
- name: Checkout code during push
3535
if: ${{ github.event_name == 'push' }}
36-
uses: actions/checkout@v6.0.1
36+
uses: actions/checkout@v6.0.2
3737
with:
3838
ref: ${{ github.ref_name }} # explicitly get the head of the branch, which will include any new commits pushed if this is a dependabot branch
3939
persist-credentials: false
4040

4141
- name: Checkout code not during push
4242
if: ${{ github.event_name != 'push' }}
43-
uses: actions/checkout@v6.0.1
43+
uses: actions/checkout@v6.0.2
4444
with:
4545
persist-credentials: false
4646

0 commit comments

Comments
 (0)