diff --git a/.copier-answers.yml b/.copier-answers.yml index 2e5dbe469..a2b069525 100644 --- a/.copier-answers.yml +++ b/.copier-answers.yml @@ -1,7 +1,7 @@ # Do NOT update manually; changes here will be overwritten by Copier -_commit: v1.3.6 +_commit: v1.5.1 _src_path: https://github.com/OCA/oca-addons-repo-template.git -ci: Travis +ci: GitHub dependency_installation_mode: OCA generate_requirements_txt: true include_wkhtmltopdf: false @@ -12,3 +12,4 @@ repo_name: Property Management System repo_slug: pms travis_apt_packages: [] travis_apt_sources: [] + diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml index 80ab1a211..06a555e73 100644 --- a/.github/workflows/pre-commit.yml +++ b/.github/workflows/pre-commit.yml @@ -17,4 +17,21 @@ jobs: # where we are not using black > 21. Older black versions won't work with # Python 3.9.8+, and we can't bump black without reformatting. python-version: "3.9.7" - - uses: pre-commit/action@v2.0.0 + - name: Get python version + run: echo "PY=$(python -VV | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV + - uses: actions/cache@v1 + with: + path: ~/.cache/pre-commit + key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }} + - name: Install pre-commit + run: pip install pre-commit + - name: Run pre-commit + run: pre-commit run --all-files --show-diff-on-failure --color=always + - name: Check that all files generated by pre-commit are in git + run: | + newfiles="$(git ls-files --others --exclude-from=.gitignore)" + if [ "$newfiles" != "" ] ; then + echo "Please check-in the following files:" + echo "$newfiles" + exit 1 + fi diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 000000000..1bc7b8b4c --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,68 @@ +name: tests + +on: + pull_request: + branches: + - "14.0*" + push: + branches: + - "14.0*" + +jobs: + unreleased-deps: + runs-on: ubuntu-latest + name: Detect unreleased dependencies + steps: + - uses: actions/checkout@v2 + - run: | + for reqfile in requirements.txt test-requirements.txt ; do + if [ -f ${reqfile} ] ; then + result=0 + # reject non-comment lines that contain a / (i.e. URLs, relative paths) + grep "^[^#].*/" ${reqfile} || result=$? + if [ $result -eq 0 ] ; then + echo "Unreleased dependencies found in ${reqfile}." + exit 1 + fi + fi + done + test: + runs-on: ubuntu-latest + container: ${{ matrix.container }} + name: ${{ matrix.name }} + strategy: + fail-fast: false + matrix: + include: + - container: ghcr.io/oca/oca-ci/py3.6-odoo14.0:latest + makepot: "true" + name: test with Odoo + - container: ghcr.io/oca/oca-ci/py3.6-ocb14.0:latest + name: test with OCB + services: + postgres: + image: postgres:9.6 + env: + POSTGRES_USER: odoo + POSTGRES_PASSWORD: odoo + POSTGRES_DB: odoo + ports: + - 5432:5432 + steps: + - uses: actions/checkout@v2 + with: + persist-credentials: false + - name: Install addons and dependencies + run: oca_install_addons + - name: Check licenses + run: manifestoo -d . check-licenses + - name: Check development status + run: manifestoo -d . check-dev-status --default-dev-status=Beta + - name: Initialize test db + run: oca_init_test_database + - name: Run tests + run: oca_run_tests + - uses: codecov/codecov-action@v1 + - name: Update .pot files + run: oca_export_and_push_pot https://x-access-token:${{ secrets.GIT_PUSH_TOKEN }}@github.com/${{ github.repository }} + if: ${{ matrix.makepot == 'true' && github.event_name == 'push' && github.repository_owner == 'OCA' }} diff --git a/.travis.yml b/.t2d.yml similarity index 100% rename from .travis.yml rename to .t2d.yml diff --git a/README.md b/README.md index 70599264e..e57951105 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ -[![Runbot Status](https://runbot.odoo-community.org/runbot/badge/flat/293/14.0.svg)](https://runbot.odoo-community.org/runbot/repo/github-com-oca-pms-293) -[![Build Status](https://travis-ci.com/OCA/pms.svg?branch=14.0)](https://travis-ci.com/OCA/pms) +[![Runboat](https://img.shields.io/badge/runboat-Try%20me-875A7B.png)](https://runboat.odoo-community.org/builds?repo=OCA/pms&target_branch=14.0) +[![Pre-commit Status](https://github.com/OCA/pms/actions/workflows/pre-commit.yml/badge.svg?branch=14.0)](https://github.com/OCA/pms/actions/workflows/pre-commit.yml?query=branch%3A14.0) +[![Build Status](https://github.com/OCA/pms/actions/workflows/test.yml/badge.svg?branch=14.0)](https://github.com/OCA/pms/actions/workflows/test.yml?query=branch%3A14.0) [![codecov](https://codecov.io/gh/OCA/pms/branch/14.0/graph/badge.svg)](https://codecov.io/gh/OCA/pms) [![Translation Status](https://translation.odoo-community.org/widgets/pms-14-0/-/svg-badge.svg)](https://translation.odoo-community.org/engage/pms-14-0/?utm_source=widget)