Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
f8c27e0
Bump version to 1.18.0
replaceafill Dec 9, 2024
7fe56b1
Update archivematica-storage-service git submodule
replaceafill Dec 9, 2024
b03adc1
Drop Python 3.8 support
replaceafill Jan 6, 2025
7c88198
Use 1.18.x OS packages in the Dockerfile
replaceafill Jan 7, 2025
ab974d5
Extend test coverage of the create_mets_v2 script
replaceafill Jan 9, 2025
60fc2c5
Do not create amdSec when bag metadata is empty
replaceafill Jan 9, 2025
a3ba8b6
Upgrade dependencies
replaceafill Jan 13, 2025
ca10b75
Upgrade Python requirements
replaceafill Jan 18, 2025
09b0025
Upgrade MediaArea version
replaceafill Jan 21, 2025
6d12f06
Fix test-at-check target in hack/Makefile
replaceafill Feb 7, 2025
091cf42
Update git submodules
replaceafill Feb 7, 2025
61e5ca1
Upgrade dependencies
replaceafill Feb 12, 2025
b79e221
Add tests for FPR event detail commands
replaceafill Feb 21, 2025
7c6aacd
Use Ubuntu 24.04 in Docker setups
replaceafill Feb 19, 2025
fd363be
Update git submodules
replaceafill Feb 24, 2025
35be1d3
Remove FPR South migrations
replaceafill Feb 25, 2025
9c517b7
Upgrade dependencies
replaceafill Mar 7, 2025
4285184
Update Django migration file
Dhwaniartefact Feb 27, 2025
07fbd19
Create namespace of JHOVE command
Dhwaniartefact Mar 3, 2025
871ce44
Fix the dashboard test and add suggested changes
Dhwaniartefact Mar 10, 2025
37be86c
Add suggested changes
Dhwaniartefact Mar 11, 2025
618213d
Remove unnecessary directories from package structure
replaceafill Mar 11, 2025
733caf2
Include management commands in coverage report
replaceafill Mar 11, 2025
063adb5
Upgrade JHOVE to 1.32.1 in hack/Dockerfile
replaceafill Mar 13, 2025
e3537cc
Extend test coverage of FPR management commands
replaceafill Mar 14, 2025
c4156a4
Delete unused code
sevein Mar 20, 2025
5ff2441
Avoid use of ast.literal_eval in validate_file
sevein Mar 21, 2025
b487d22
Use json.loads to decode unit vars
sevein Mar 21, 2025
97cbebd
Fix exception handling in json.loads
sevein Mar 22, 2025
4f400e4
Restructure Python project to follow the src layout
replaceafill Mar 24, 2025
2b3c4ba
Update Storage Service development rules
replaceafill Mar 26, 2025
aca8458
Do not show user API keys
replaceafill Mar 31, 2025
f540227
Update FPR format groups to match PRONOM classifications
replaceafill Mar 27, 2025
c437967
Update Dashboard search enabled setting description
replaceafill Apr 3, 2025
c10f921
Remove unused variable THIS_DIR
sevein Apr 8, 2025
ca31db0
Use importlib package to get assets and metadata
replaceafill Apr 8, 2025
67c06c7
Add support for PKCE
scollazo Mar 13, 2025
42b7dfa
Update archivematica-storage-service git submodule
sbreker Apr 11, 2025
ad01b68
Update to PRONOM v120
replaceafill Apr 21, 2025
8ac76be
Remove chrome browser from AMAUAT CI tests
Dhwaniartefact Apr 29, 2025
13d327b
Add ability to set roles from OIDC claims
sbreker Mar 6, 2025
3e1b52a
Allow OIDC role config by provider
sbreker May 1, 2025
d31e8b0
Use package-lock.json on Dashboard frontend build
replaceafill May 8, 2025
8fc0896
Upgrade dependencies
replaceafill May 9, 2025
2dcc70c
Remove migration data dependency from Dashboard tests
replaceafill May 13, 2025
3d7b564
Remove migration data dependency from MCPClient tests
replaceafill May 13, 2025
7a7ee74
Reduce amount of jobs in test CI workflow
replaceafill May 14, 2025
783e65d
Refactor virus scanning to use clamav-client
sevein May 15, 2025
4ad1091
Rename antivirus client module
sevein May 15, 2025
25285c3
Add OIDC session refresh middleware
sbreker May 5, 2025
9f6e6f2
Update Storage Service submodule
sbreker May 16, 2025
206b7e6
Upgrade dependencies
replaceafill May 19, 2025
5fb7112
Update release notes for 1.17.1
replaceafill May 20, 2025
0f481b9
Add fixture for Dashboard UUID setting
replaceafill May 21, 2025
0b21f34
Remove unused MCPClient config variable
replaceafill May 25, 2025
2a21cbc
Remove /usr references from FPR commands
replaceafill May 29, 2025
afd3f38
Remove /usr references from MCPClient settings
replaceafill May 28, 2025
b667c38
Remove /usr references from Dashboard configuration
replaceafill May 29, 2025
02c43c1
Remove non-functional FPR features
replaceafill May 30, 2025
dbacf3f
Upgrade dependencies
replaceafill Jun 2, 2025
10dc394
Handle invalid arguments in transcribe_file client script
replaceafill Jun 3, 2025
0c8f389
Remove git ident attribute
sevein Jun 4, 2025
656ac48
Add GitHub workflow to push images to Docker Hub
replaceafill Jun 5, 2025
cc40592
Upgrade dependencies
replaceafill Jun 8, 2025
267ff86
Upgrade bagit to 1.9.0
sevein Jun 12, 2025
943345f
Use artefactual/gearmand:1.1.21.5-alpine
sevein Jun 19, 2025
48fe555
Use clamav/clamav-debian image
sevein Jun 23, 2025
e8bdb00
Move db access logic out of the elasticSearchFunction module
replaceafill Jun 23, 2025
298e3fc
Upgrade dependencies
replaceafill Jun 23, 2025
5fea970
Add archivematica.search package
replaceafill Jul 1, 2025
0346040
Improve Docker build performance with caching
replaceafill Jul 7, 2025
36929e8
Update JHOVE validation rules for TIFF formats
replaceafill Jun 30, 2025
7d40b01
Upgrade JHOVE to 1.34.0
replaceafill Jul 21, 2025
260c387
Fix MySQL timeout error when compressing large AIPs
replaceafill Jul 22, 2025
4d3d3a4
Add an additional index on the Jobs table
Jun 25, 2025
888542e
Update OIDC var description in README (#2086)
sbreker Jul 25, 2025
9d76f9a
Add JHOVE validation errors to the METS file
replaceafill Aug 1, 2025
0e6423f
Add current password validation to user edit form
replaceafill Jul 30, 2025
cca42e4
Fix cleanup job after SIP arrangement
replaceafill Aug 12, 2025
ad8bfbd
Preserve existing XML catalogs when adding local one
replaceafill Aug 8, 2025
9925702
Upgrade dependencies
replaceafill Aug 18, 2025
3d8d8ea
Generate Python requirement files from pyproject.toml
replaceafill Aug 18, 2025
91f24f5
Refactor search functionality with service layer
replaceafill Aug 21, 2025
82dfa22
Upgrade Elasticsearch to 8.x
replaceafill Aug 22, 2025
67ee62f
Add application variables for cookie security
replaceafill Aug 19, 2025
5238584
Upgrade dependencies
replaceafill Aug 27, 2025
445e901
Prevent UID/GID clashes more robustly in Docker builds
sevein Sep 2, 2025
e408e02
Update Docker images in dev services
sevein Sep 1, 2025
383f0ed
Add dependabot.yml config file
sevein Sep 1, 2025
7c89549
Migrate directives in CSP settings file
replaceafill Sep 3, 2025
d7d65b9
Upgrade dependencies
replaceafill Sep 4, 2025
9861474
Bump the docker-compose-dev group across 1 directory with 3 updates
dependabot[bot] Sep 8, 2025
457454f
Pin GitHub Actions to specific SHAs
sevein Sep 11, 2025
0edf863
Monitor GitHub Actions with Dependabot
sevein Sep 11, 2025
a29109b
Ensure pinning of GitHub Actions
sevein Sep 11, 2025
4e7984f
Rename requirement to inotify-simple
sevein Sep 8, 2025
8df5aee
Disable Gunicorn's autoreload by default
sevein Sep 8, 2025
871ef84
Update archivematica-storage-service git submodule
replaceafill Sep 25, 2025
81b4c2c
Remove wiki references from README
sarah-mason Sep 26, 2025
2f3e8f2
Updates to CONTRIBUTING.md file
sarah-mason Sep 26, 2025
3320886
Update release notes for 1.18.0
replaceafill Aug 19, 2025
2438678
Update archivematica-storage-service git submodule
replaceafill Sep 26, 2025
4c02801
Merge changes from version 1.18
liam-lloyd Jan 6, 2026
dafdea3
Pin Github actions by commit hash in build workflow
liam-lloyd Jan 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 3 additions & 2 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,10 @@
!/TRADEMARK

# Exclude
src/dashboard/frontend/node_modules
src/dashboard/src/media/js/build
src/archivematica/dashboard/frontend/node_modules
src/archivematica/dashboard/media/js/build
**/*~
**/*.log
**/node_modules
**/Thumbs.db
**/*.egg-info
10 changes: 4 additions & 6 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
*.py ident
*.sh ident
src/dashboard/frontend/app/locale/*.po linguist-generated=true
src/dashboard/frontend/app/locale/*.pot linguist-generated=true
src/dashboard/frontend/app/locale/translations.json linguist-generated=true
src/dashboard/frontend/package-lock.json linguist-generated=true
src/archivematica/dashboard/frontend/app/locale/*.po linguist-generated=true
src/archivematica/dashboard/frontend/app/locale/*.pot linguist-generated=true
src/archivematica/dashboard/frontend/app/locale/translations.json linguist-generated=true
src/archivematica/dashboard/frontend/package-lock.json linguist-generated=true
29 changes: 29 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
version: 2
updates:
- package-ecosystem: "docker-compose"
directory: "/hack"
schedule:
interval: "daily"
open-pull-requests-limit: 1
groups:
docker-compose-dev:
patterns:
- "*"
- package-ecosystem: "docker-compose"
directory: "/tests/integration"
schedule:
interval: "daily"
open-pull-requests-limit: 1
groups:
docker-compose-tests:
patterns:
- "*"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 1
groups:
github-actions:
patterns:
- "*"
8 changes: 4 additions & 4 deletions .github/workflows/acceptance-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
test:
if: "${{ github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.label.name == 'AMAUAT') }}"
name: "Test ${{ matrix.tag }} on ${{ matrix.browser }}"
runs-on: "ubuntu-22.04"
runs-on: "ubuntu-24.04"
strategy:
fail-fast: false
matrix:
Expand All @@ -35,12 +35,12 @@ jobs:
steps:
- name: "Check out repository"
if: "${{ github.event_name != 'workflow_dispatch' }}"
uses: "actions/checkout@v4"
uses: "actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955" # v4.3.0
with:
submodules: true
- name: "Check out repository (manually triggered)"
if: "${{ github.event_name == 'workflow_dispatch' }}"
uses: "actions/checkout@v4"
uses: "actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955" # v4.3.0
with:
ref: "${{ inputs.am_version || 'qa/1.x' }}"
submodules: true
Expand Down Expand Up @@ -83,7 +83,7 @@ jobs:
working-directory: ./hack
- name: "Upload docker logs on failure"
if: "${{ (failure() && steps.amauat-run.outcome == 'failure') || (cancelled() && steps.amauat-run.outcome == 'cancelled') }}"
uses: "actions/upload-artifact@v4"
uses: "actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02" # v4.6.2
with:
name: "docker-logs-${{ matrix.tag }}-${{ matrix.browser }}"
path: "./hack/docker-logs"
8 changes: 4 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG: ${{ steps.generate_mcp_server_image_tag.outputs.ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG}}
ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG: ${{ steps.generate_mcp_client_image_tag.outputs.ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG}}
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
- name: Set ECR domain env var
id: set_ecr_domain
run: echo "ECR_DOMAIN=364159549467.dkr.ecr.$AWS_REGION.amazonaws.com" >> "$GITHUB_ENV"
Expand Down Expand Up @@ -62,7 +62,7 @@ jobs:
env:
ARCHIVEMATICA_DASHBOARD_IMAGE_TAG: ${{ needs.generate_image_tags.outputs.ARCHIVEMATICA_DASHBOARD_IMAGE_TAG}}
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
with:
repository: ${{ inputs.target_repo }}
- run: docker build -t $ARCHIVEMATICA_DASHBOARD_IMAGE_TAG --target archivematica-dashboard -f hack/Dockerfile .
Expand All @@ -81,7 +81,7 @@ jobs:
env:
ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG: ${{ needs.generate_image_tags.outputs.ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG}}
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
with:
repository: ${{ inputs.target_repo }}
- run: docker build -t $ARCHIVEMATICA_MCP_SERVER_IMAGE_TAG --target archivematica-mcp-server -f hack/Dockerfile .
Expand All @@ -100,7 +100,7 @@ jobs:
env:
ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG: ${{ needs.generate_image_tags.outputs.ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG}}
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd
with:
repository: ${{ inputs.target_repo }}
- run: docker build -t $ARCHIVEMATICA_MCP_CLIENT_IMAGE_TAG --target archivematica-mcp-client -f hack/Dockerfile .
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/generate-sbom.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ jobs:
options: --entrypoint ""
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0

- name: Set up cache
uses: actions/cache@v4
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
with:
path: .trivycache/
key: ${{ runner.os }}-trivy-${{ hashFiles('requirements*.txt', 'src/dashboard/frontend/package-lock.json') }}
key: ${{ runner.os }}-trivy-${{ hashFiles('requirements*.txt', 'src/archivematica/dashboard/frontend/package-lock.json') }}
restore-keys: |
${{ runner.os }}-trivy-

Expand All @@ -30,7 +30,7 @@ jobs:
TRIVY_NO_PROGRESS: "true"

- name: Upload SBOM artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: sbom
path: sbom.xml
Expand All @@ -40,7 +40,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download SBOM artifact
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
with:
name: sbom

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/oidc-integration-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
runs-on: "ubuntu-24.04"
steps:
- name: "Check out repository"
uses: "actions/checkout@v4"
uses: "actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955" # v4.3.0
- name: "Save user id"
id: user_id
run: |
Expand All @@ -18,7 +18,7 @@ jobs:
run: |
echo "group_id=$(id -g)" >> $GITHUB_OUTPUT
- name: "Set up buildx"
uses: "docker/setup-buildx-action@v3"
uses: "docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435" # v3.11.1
- name: "Run tests"
run: |
./run.sh
Expand All @@ -27,7 +27,7 @@ jobs:
env:
USER_ID: ${{ steps.user_id.outputs.user_id }}
GROUP_ID: ${{ steps.group_id.outputs.group_id }}
UBUNTU_VERSION: "22.04"
UBUNTU_VERSION: "24.04"
PYTHON_VERSION: "3.9"
COMPOSE_DOCKER_CLI_BUILD: 1
DOCKER_BUILDKIT: 1
Expand Down
32 changes: 32 additions & 0 deletions .github/workflows/push-images.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: "Push images to Docker Hub"
on: workflow_dispatch
jobs:
build:
name: "Build and push images"
runs-on: "ubuntu-24.04"
strategy:
fail-fast: false
matrix:
component:
- archivematica-dashboard
- archivematica-mcp-client
- archivematica-mcp-server
steps:
- name: "Check out repository"
uses: "actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955" # v4.3.0
- name: "Set up buildx"
uses: "docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435" # v3.11.1
- name: "Log in to Docker Hub"
uses: docker/login-action@184bdaa0721073962dff0199f1fb9940f07167d1 # v3.5.0
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_TOKEN }}
- name: "Build and push ${{ matrix.component }}"
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
context: .
push: true
load: true
file: ./hack/Dockerfile
target: ${{ matrix.component }}
tags: artefactual/${{ matrix.component }}:latest
Loading
Loading