-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update to work with Arches 7.6.2 (#40)
* Upgrade to support latest in arches 76x * Do not require extension on uppy dependency * Updates for app config changes * arches should be greater than 7.6.0a0 * Update to support latest changes for 7.6 projects * Update to latest project configs * Update for latest webpack changes * Update workflows with latest config * Update apps.py for 7.6 latest * Update gh action * Pin arches and afs dependencies to branches * Cleanup * Ignore archestemp * Add dev dependencies to .toml * Update afs dependency branch * Blacken * Pin uppy version * Fix prettier command * Add minimal test files * Remove unnecessary __init__.py * Re-run updateproject with latest dev/7.6.x * Update package.json * Update apps.py for 7.6. latest (#39) * Update apps.py for 7.6. latest * Use the arches test runner instead of base test * Formatting * Update to require afs 2.0 and Arches 7.6.2 --------- Co-authored-by: Aaron Gundel <[email protected]>
- Loading branch information
1 parent
29e262d
commit cb0d875
Showing
58 changed files
with
21,153 additions
and
10,709 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
{ | ||
"presets": [ | ||
[ | ||
"@babel/preset-env" | ||
] | ||
] | ||
} |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
[run] | ||
source = | ||
disco/ | ||
|
||
omit = | ||
*/python?.?/* | ||
*/migrations/* | ||
*/settings*.py | ||
*/urls.py | ||
*/wsgi.py | ||
*/hosts.py | ||
*/celery.py | ||
*/__init__.py | ||
|
||
data_file = coverage/python/.coverage | ||
|
||
[report] | ||
show_missing = true | ||
|
||
exclude_lines = | ||
pragma: no cover | ||
|
||
[html] | ||
directory = coverage/python/htmlcov | ||
|
||
[xml] | ||
output = coverage/python/coverage.xml | ||
|
||
[json] | ||
output = coverage/python/coverage.json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# Set the default behavior, in case people don't have core.autocrlf set. | ||
* text=auto | ||
|
||
# Known binary formats | ||
*.png binary | ||
*.jpg binary | ||
*.ico binary | ||
*.gif binary | ||
*.ttf binary | ||
*.woff binary | ||
*.woff2 binary |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
name: 'Build and test branch' | ||
description: 'Builds and tests a branch' | ||
inputs: | ||
branch-type: | ||
description: 'String denoting either `target` or `feature` branch' | ||
required: true | ||
project-name: | ||
description: 'String denoting the name of the project' | ||
required: true | ||
secrets: | ||
description: 'Secrets from main.yml as JSON' | ||
runs: | ||
using: 'composite' | ||
steps: | ||
- name: Install Java, GDAL, and other system dependencies | ||
run: | | ||
sudo apt update | ||
sudo apt-get install libxml2-dev libpq-dev openjdk-8-jdk libgdal-dev libxslt-dev | ||
echo Postgres and ES dependencies installed | ||
shell: bash | ||
|
||
- name: Set up Elasticsearch | ||
uses: ankane/setup-elasticsearch@v1 | ||
with: | ||
elasticsearch-version: 8 | ||
|
||
- name: Install Python packages | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install '.[dev]' | ||
echo Python packages installed | ||
shell: bash | ||
|
||
- name: Ensure frontend configuration files exist | ||
run: | | ||
python manage.py check | ||
shell: bash | ||
|
||
- name: Install Arches applications | ||
uses: ./.github/actions/install-arches-applications | ||
with: | ||
secrets: ${{ inputs.secrets }} | ||
|
||
- name: Install frontend dependencies | ||
run: | | ||
npm install | ||
shell: bash | ||
|
||
- name: Webpack frontend files | ||
run: | | ||
npm run build_test | ||
shell: bash | ||
|
||
- name: Check frontend formatting with prettier | ||
run: | | ||
npm run prettier:check | ||
shell: bash | ||
|
||
- name: Check backend formatting with black | ||
run: | | ||
black . --check --exclude=node_modules | ||
shell: bash | ||
|
||
- name: Check line endings | ||
run: | | ||
! git ls-files --eol | grep 'w/crlf\|w/mixed' | ||
shell: bash | ||
|
||
- name: Run frontend tests | ||
run: | | ||
npm run vitest | ||
mv coverage/frontend/coverage.xml ${{ inputs.branch-type }}_branch_frontend_coverage.xml | ||
shell: bash | ||
|
||
- name: Check for missing migrations | ||
run: | | ||
python manage.py makemigrations --check | ||
shell: bash | ||
|
||
- name: Ensure previous Python coverage data is erased | ||
run: | | ||
coverage erase | ||
shell: bash | ||
|
||
- name: Run Python unit tests | ||
run: | | ||
python -W default::DeprecationWarning -m coverage run manage.py test tests --settings="tests.test_settings" | ||
shell: bash | ||
|
||
- name: Generate Python report coverage | ||
run: | | ||
coverage report | ||
coverage json | ||
mv coverage/python/coverage.json ${{ inputs.branch-type }}_branch_python_coverage.json | ||
shell: bash | ||
|
||
- name: Upload frontend coverage report as artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: ${{ inputs.branch-type }}-branch-frontend-coverage-report | ||
path: ${{ inputs.branch-type }}_branch_frontend_coverage.xml | ||
overwrite: true | ||
|
||
- name: Upload Python coverage report as artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: ${{ inputs.branch-type }}-branch-python-coverage-report | ||
path: ${{ inputs.branch-type }}_branch_python_coverage.json | ||
overwrite: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
name: 'Install Arches Applications' | ||
description: 'Manually edit this file to install all Arches Applications declared in settings.py, but not declared in `pyproject.toml`' | ||
inputs: | ||
secrets: | ||
description: 'Secrets from main.yml as JSON' | ||
runs: | ||
using: 'composite' | ||
steps: | ||
|
||
# Manually add any ARCHES_APPLICATIONS to this file if not already declared in `pyproject.toml`. | ||
# Below is a template for adding an application in a private repository. | ||
# Be sure to delete the `no-op step` if adding when updating this file. | ||
|
||
- name: No-op step to maintain workflow structure | ||
run: echo "No-op step" | ||
shell: bash | ||
|
||
# - name: Checkout ${my_arches_application_name} | ||
# uses: actions/checkout@v4 | ||
# with: | ||
# repository: ${my_arches_application_repository}/${my_arches_application_name} | ||
# token: ${{ fromJSON(inputs.secrets).${my_github_personal_access_token} }} | ||
# path: ${my_arches_application_name} | ||
|
||
# - name: Install ${my_arches_application_name} | ||
# run: | | ||
# pip install ./${my_arches_application_name} | ||
# echo ${my_arches_application_name} installed | ||
# shell: bash |
Oops, something went wrong.