Commit Graph

251 Commits

Author SHA1 Message Date
Oliver
e2505433a2
Docker build fix (#4811)
* Attempt to fix crypto build on raspbian

* Run CI if requirements files change
2023-05-15 08:27:26 +10:00
Matthias Mair
10c3d101e8
Replace mklint with djlint (#4746)
* remove markuplint

* remove dedicated html step - will be done by pre-commit

* add djlint for django template linting

* Fix T003: Endblock should have name

* Fix H013: Img tag should have an alt attribute

* Fix H014: Found extra blank lines

* Fix T003: Endblock should have name

* Fix H013: Img tag should have an alt attribute

* small fixes

* Fix T001: Variables should be wrapped in a single whitespace

* Fix T003: Endblock should have name

* small fixes

* fix form method

* add entry to contributing

* fix template changes

* another fix

* use current version
2023-05-02 20:03:52 +10:00
Matthias Mair
e5e1a09b45
CI cleanup (#4744)
* merge doc checks into main QC checks

* rename

* well both APIs are closed now so this would be useless

* make header more concise

* add check if server code changed - make run conditional

* reformat
2023-05-02 07:58:57 +10:00
Oliver
c5ba632463
Use coveralls github action (#4735) 2023-05-01 22:13:35 +10:00
Matthias Mair
3975a85742
Check if doc links are broken (#4686)
* add check for links

* fix style

* call silently

* add dep

* add path

* ignore readme as it contains necesarry broken links

* fix syntax

* check recursevly

* run in sync

* use linkcheckmd instaead

* use sync

* add requests

* revert fix to check if checks still work

* fix lookup

* fix old link

* run check verbose

* run async

* remove recurse

* introduce error for test

* fix link
2023-04-27 07:24:26 +10:00
Oliver
2ffd2354eb
Documentation integration (#4653)
* Add documentation under docs/ directory

* Add CI workflow for mkdocs configuration checking

* Add documentation issue template

* update pip-tools?

* Update .gitignore files

* Fix .gitignore rules

* Improve release notes page

* remove references to old repo
2023-04-22 22:40:29 +10:00
Matthias Mair
ab7b03ac59
Add GHCR.io as publishing target (#4561)
* update deps

* Add GHCR.io as publishing target
Fixes #4560

* add permissions

* Revert "update deps"

This reverts commit cb2f612bb3.
2023-04-05 22:01:05 +10:00
Oliver
f070c64534
Adds concurrency config for docker CI workflow (#4160) 2023-01-06 10:40:50 +11:00
Oliver
8a095f00cf
Disable cosign step in docker workflow (#4145)
- Is not working, just throws errors
- Also disable dependency workflow (is not working)
2023-01-04 11:21:25 +11:00
Oliver
95dc78a61f
[Testing] Fix docker build (#4109)
* Test fix for ongoing CI issues

(cherry picked from commit 3bf5492cb6)

* Run docker test on PR (temporarily)

* Add token to unit testing env

* Add github token to env file

* Fix for github token

* Ignore blank tokens

* Don't run on PR
2022-12-26 23:27:12 +11:00
Oliver
4034349043
Use github token for version check (#4092)
* Use github token for version check

- Should prevent 403 errors

* Use github token when running version update in unit test
2022-12-21 23:00:23 +11:00
Oliver
0f55cbf7f5
Import setuptools in manage.py (#4061)
* Import setuptools in manage.py

Ref: https://github.com/pypa/setuptools/issues/3706

* Import all the things

* Show setuptools version

* Update setuptools to latest verseion

* Force upgrade of setuptools version

* Remove debug

* Prevent docker builds on PR

* Remove setuptools imports
2022-12-16 07:42:07 +11:00
Oliver
bfeffd0cc7
Docker fix final 2 (#4049)
* Append correct python path if not present (only during testing)

* Add a bunch more debug info

* Display docker compose version

* More unit test fixes

* More debug info

* Ensure correct python path is included for docker build (only for testing)

* Remove debug statements

* Don't run docker workflow on PR
2022-12-14 22:28:46 +11:00
Oliver
2f7be70287
Append correct python path if not present (only during testing) (#4048)
* Append correct python path if not present (only during testing)

* Add a bunch more debug info
2022-12-12 19:17:16 +11:00
Oliver
c4f0fa4d3a
Debug for docker workflow (#4021)
* Debug for docker workflow

* Show docker image hash

* More debug output

* Debug system path

* Disable pty for invoke test

* Disable pty as part of invoke test

* remove debug statements

* Disable docker workflow on pull request
2022-12-09 00:15:26 +11:00
Oliver
4ad88c7822
Test for docker workflow (#4014)
* Test for docker workflow

* Ensure yaml is installed in the local env

* Install the right package

* Debug yaml path

* Check data directory first

* Let them run

* More debug info

* Try reverting a recent change

* Disable test

* Check envvar directory

* Remove debug prints

* Re-enable unit test

* Use os.getenv

* Prevent docker workflow from running on pull requests

* Re-add InvenTree.helpers import
2022-12-05 13:10:14 +11:00
Oliver
1b168ba904
Fix for stable release (#4006)
- Was disabled, as it was bundled in with the social media workflows
- Splits out into separate workflow
2022-11-30 10:50:31 +11:00
Oliver
ff400106d7
Fix for docker workflow (#3989)
* Update docker workflow

* typo fix

* Run tests differently in docker

* Settings tweak

* revert settings change

* Don't build docker image on PR
2022-11-22 23:28:16 +11:00
Oliver
0fd1390fe0
Workflow fix (#3830)
* Specify minimum python version for docker build workflow

(cherry picked from commit 18c55b30b81aef66c131a960586b52d655a621f9)

* Specify python version for translation checker

(cherry picked from commit 14360507f5c9d77ed8321755aab25a79fbcf10f9)

* Disable social media workflow

(has never worked, anyway)

(cherry picked from commit 56fbcbeae25b165978d149aa484ae7335f8f67a4)
2022-10-22 12:45:50 +11:00
Matthias Mair
c0bcee870e
Bump actions to node 16 / current releases (#3799)
* bump actions to node 16 / current releases

* fix merge
2022-10-17 13:46:12 +11:00
Matthias Mair
182bc29053
Add db an media backups (#3783)
* [FR] Add backup into inventrees lifecycle
Fixes #3778

* Add env to testing enviros

* block backup from running app commands

* Add more commands

* fix postgres version

* Update used env

* add daily task to run backups

* add installer changes
2022-10-17 00:09:31 +11:00
Matthias Mair
a1c91cfd8e
remove broken action (#3742) 2022-10-04 16:29:15 +10:00
Oliver
c8e8991cf5
Fix for stable branch push (#3619)
* Fix for stable branch push

* Ensure we don't update stable to an older release
2022-08-30 14:27:55 +10:00
Matthias Mair
0a57f9d459
Fix: Broken subfolder tests in postgres/docker CI in master (#3559)
* disable failing tests for sanity check

* run postgrest too

* only run problematic tests

* make paths relative

* refactor to reduce duplicate code

* remove testing restrictions again
2022-08-17 09:10:56 +10:00
Matthias Mair
00dbf00eb9
[FR] Tie github actions to specific commit hashes (#3532)
* [FR] Tie github actions to specific commit hashes
Fixes #3530

* udpate action versions
2022-08-15 08:20:03 +10:00
Matthias Mair
12a321ed4f
Depenency updates (#3472)
* update requirements

* automate everything
2022-08-06 09:26:27 +10:00
Oliver
7cabb78964
Docker compose relative path (#3410)
* Update development docker-compose file

- Remove external volume definition
- v2 does not allow relative path spec here
- Simplification is only required for dev version

* Remove old debug messages

* Update docker build CI step

- Check that required directories / files have been created in the correct location(s)

* Add check for pgdb directory

* Run partial docker check on pull_request

* Disable workflow running on pull requests
2022-07-27 07:50:54 +10:00
Oliver
779646771d
Use different twitter action (#3387) 2022-07-22 13:44:40 +10:00
Oliver
aca58dedc0
Fix for docker signing (#3363)
- Add required "images" attribute
- Ref: https://github.com/docker/metadata-action#images-input
2022-07-20 18:32:18 +10:00
Matthias Mair
dbbdaf39c7
[FR] Sign artifacts with sigstore (#3347)
Fixes #3077
2022-07-20 16:20:58 +10:00
Matthias Mair
6133c745d7
[FR] Automated releases (#3316)
* [FR] Automated releases
automated messages on the socials
Fixes #3078

* Add more details to Reddit

* Fix twitter text

* fix syntax

* Update release.yml

Add hashtags to twitter post

Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2022-07-10 22:23:10 +10:00
Oliver
a0de446e5e
Docker: Use existing task definition (#3279) 2022-07-01 21:03:25 +10:00
Oliver
4403c9cfe4
Fixes for broken CI builds (#3276)
* Install dev requirements when running unit tests

* Disable mysql and postgresql checks for pull requests

* Install required dev packages when running tests on docker build
2022-07-01 12:36:20 +10:00
Matthias Mair
cf70e4220f
Update requirements (#3228)
* Remove stat context variables

* Revert "Remove stat context variables"

This reverts commit 0989c308d0.

* remove old backport

* move requirements

* move isort

* move migrations-tests

* add pip-tools as req and add hook

* Use hashes and also run when txt files are added

* Update to hashes in requirements

* update requirements install path

* remove allauth-2fa for a test

* install dev-requirements

* re-enable allauth

* remove hashes from pre normal setup

* Remove version bindings if they are the laest

* move depencies to upper bound

* fix django-money

* remove windows specific requirements

* also install dependencies

* update markdownify

* remove django-admin-shell

* remove unneeded packages

* add docs

* remove pins and fix pre-commit pipeline

* pin django-money

* really remove admin shell

* return default behaviour for money serializer

* pip fix

* update filter name

* set decimal for output

* add migrations

* pin coveralls

* update requirements

Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com>
2022-06-28 22:12:00 +10:00
Oliver
f223ea224d
Docker requirements update (#3266)
* Pin mariadb package <= 1.1.0

- Recent update to 1.1.2 requires newer version of mariadb connector

* Change <= to <
2022-06-28 13:47:10 +10:00
Oliver
44b42050aa
Fix translation issue with javascript (#3246)
* Adds a custom translation node class to strip dirty characters from translated strings

* Update javascript files to use new template tag

* Override behaviour of {% load i18n %}

- No longer requires custom tag loading
- All templates now use escaped translation values
- Requires re-ordering of app loading
- Revert js_i18n to simply i18n

* CI step now lints JS files compiled in each locale

* Checking that the CI step fails

* Revert "Checking that the CI step fails"

This reverts commit ba2be0470d.
2022-06-25 10:50:26 +10:00
Oliver
5870b21a91
Simplify version_check script (#3152)
* Simplify version_check script

- Allow 'x.x.x' or 'x.x.x dev' on master branch (because we need to be able to tag releases from master)
- Remove duplicate regex checks
- Fix docstrings

* Run version check on all branches

- Will ensure we cannot merge in duplicate tags

* Add requests package

* Add requests package
2022-06-07 08:57:51 +10:00
Matthias Mair
0c97a50e47
Docstring checks in QC checks (#3089)
* Add pre-commit to the stack

* exclude static

* Add locales to excludes

* fix style errors

* rename pipeline steps

* also wait on precommit

* make template matching simpler

* Use the same code for python setup everywhere

* use step and cache for python setup

* move regular settings up into general envs

* just use full update

* Use invoke instead of static references

* make setup actions more similar

* use python3

* refactor names to be similar

* fix runner version

* fix references

* remove incidential change

* use matrix for os

* Github can't do this right now

* ignore docstyle errors

* Add seperate docstring test

* update flake call

* do not fail on docstring

* refactor setup into workflow

* update reference

* switch to action

* resturcture

* add bash statements

* remove os from cache

* update input checks

* make code cleaner

* fix boolean

* no relative paths

* install wheel by python

* switch to install

* revert back to simple wheel

* refactor import export tests

* move setup keys back to not disturbe tests

* remove docstyle till that is fixed

* update references

* continue on error

* add docstring test

* use relativ action references

* Change step / job docstrings

* update to merge

* reformat comments 1

* fix docstrings 2

* fix docstrings 3

* fix docstrings 4

* fix docstrings 5

* fix docstrings 6

* fix docstrings 7

* fix docstrings 8

* fix docstirns 9

* fix docstrings 10

* docstring adjustments

* update the remaining docstrings

* small docstring changes

* fix function name

* update support files for docstrings

* Add missing args to docstrings

* Remove outdated function

* Add docstrings for the 'build' app

* Make API code cleaner

* add more docstrings for plugin app

* Remove dead code for plugin settings
No idea what that was even intended for

* ignore __init__ files for docstrings

* More docstrings

* Update docstrings for the 'part' directory

* Fixes for related_part functionality

* Fix removed stuff from merge 99676ee

* make more consistent

* Show statistics for docstrings

* add more docstrings

* move specific register statements to make them clearer to understant

* More docstrings for common

* and more docstrings

* and more

* simpler call

* docstrings for notifications

* docstrings for common/tests

* Add docs for common/models

* Revert "move specific register statements to make them clearer to understant"

This reverts commit ca96654622.

* use typing here

* Revert "Make API code cleaner"

This reverts commit 24fb68bd3e.

* docstring updates for the 'users' app

* Add generic Meta info to simple Meta classes

* remove unneeded unique_together statements

* More simple metas

* Remove unnecessary format specifier

* Remove extra json format specifiers

* Add docstrings for the 'plugin' app

* Docstrings for the 'label' app

* Add missing docstrings for the 'report' app

* Fix build test regression

* Fix top-level files

* docstrings for InvenTree/InvenTree

* reduce unneeded code

* add docstrings

* and more docstrings

* more docstrings

* more docstrings for stock

* more docstrings

* docstrings for order/views

* Docstrings for various files in the 'order' app

* Docstrings for order/test_api.py

* Docstrings for order/serializers.py

* Docstrings for order/admin.py

* More docstrings for the order app

* Add docstrings for the 'company' app

* Add unit tests for rebuilding the reference fields

* Prune out some more dead code

* remove more dead code

Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com>
2022-06-02 01:37:39 +10:00
Oliver
8c9f676ffb
Fix formatting of 'build-args' parameter for docker build (#3105)
* Fix formatting of 'build-args' parameter for docker build

* Remove quotes
2022-05-31 14:26:35 +10:00
Oliver
ccefefdc7f
Version checker (#3102)
* Updates for docker version check script:

- Do not run on a push to stable
- Check existing versions via GitHub API
- Add stable docker image tag also

* Fix regex pattern

* Check for null regex result

* Push to stable on tagged release
2022-05-31 09:50:38 +10:00
Oliver
deacf207ff
Docker Build Fixes (#3093)
* Docker: Require libffi-dev

* set push to true

* debug

* Check GITHUB_BASE_REF also
2022-05-29 13:47:29 +10:00
Oliver
b9fd263899
Docker improvements (#3042)
* Simplified dockerfile

- Changed from alpine to python:slim
- Removed some database libs (because we *connect* to a db, not host it)

* - Add gettext as required package
- Only create inventree user as part of production build (leave admin access for dev build)

* Tweaks for tasks.py

* Fix user permissions (drop to inventree user)

* Drop to the 'inventree' user level as part of init.sh

- As we have mounted volumes at 'run time' we need to ensure that the inventree user has correct permissions!
- Ref: https://stackoverflow.com/questions/39397548/how-to-give-non-root-user-in-docker-container-access-to-a-volume-mounted-on-the

* Adjust user setup

- Only drop to non-root user as part of "production" build
- Mounted external volumes make it tricky when in the dev build
- Might want to revisit this later on

* More dockerfile changes

- reduce required system packages
-

* Add new docker github workflow

* Print some more debug

* GITHUB_BASE_REF

* Add gnupg to base requirements

* Improve debug output during testing

* Refactoring updates for label printing API

- Update weasyprint version to 55.0
- Generate labels as pdf files
- Provide filename to label printing plugin
- Additional unit testing
- Improve extraction of some hidden debug data during TESTING
- Fix a spelling mistake (notifaction -> notification)

* Working on github action

* More testing

* Add requirement for pdf2image

* Fix label printing plugin and update unit testing

* Add required packages for CI

* Move docker files to the top level directory

- This allows us to build the production image directly from soure
- Don't need to re-download the source code from github
- Note: The docker install guide will need to be updated!

* Fix for docker ci file

* Print GIT SHA

* Bake git information into the production image

* Add some exta docstrings to dockerfile

* Simplify version check script

* Extract git commit info

* Extract docker tag from check_version.py

* Newline

* More work on the docker workflow

* Dockerfile fixes

- Directory / path issues

* Dockerfile fixes

- Directory / path issues

* Ignore certain steps on a pull request

* Add poppler-utils to CI

* Consolidate version check into existing CI file

* Don't run docker workflow on pull request

* Pass docker image tag through to the build

Also check .j2k files

* Add supervisord.conf example file back in

* Remove --no-cache-dir option from pip install
2022-05-29 09:40:37 +10:00
Matthias Mair
4d8836378b
CI updates (#3087)
* Add pre-commit to the stack

* exclude static

* Add locales to excludes

* fix style errors

* rename pipeline steps

* also wait on precommit

* make template matching simpler

* Use the same code for python setup everywhere

* use step and cache for python setup

* move regular settings up into general envs

* just use full update

* Use invoke instead of static references

* make setup actions more similar

* use python3

* refactor names to be similar

* fix runner version

* fix references

* remove incidential change

* use matrix for os

* Github can't do this right now

* ignore docstyle errors

* Add seperate docstring test

* update flake call

* do not fail on docstring

* refactor setup into workflow

* update reference

* switch to action

* resturcture

* add bash statements

* remove os from cache

* update input checks

* make code cleaner

* fix boolean

* no relative paths

* install wheel by python

* switch to install

* revert back to simple wheel

* refactor import export tests

* move setup keys back to not disturbe tests

* remove docstyle till that is fixed

* update references

* continue on error

* use relativ action references

* Change step / job docstrings
2022-05-28 10:38:12 +10:00
Matthias Mair
93b6934127 fix trailing 2022-05-20 13:20:55 +02:00
Matthias Mair
e1abdddc4a
Merge branch 'inventree:master' into not-working-tests 2022-05-20 00:28:35 +02:00
Oliver
af88f6ec97 python CI: wait for server before continuing 2022-05-19 11:55:53 +10:00
Matthias
b2f5c60877
update pip before running - reduce warnings 2022-05-19 01:46:04 +02:00
Matthias
38f8e9c9ab
remove duplicate install 2022-05-19 01:13:47 +02:00
Matthias
4d4a164923
do full update 2022-05-19 01:02:24 +02:00
Matthias
16dad60ea5
collect static right before starting 2022-05-18 23:31:18 +02:00