Merge pull request #878 from tegin/13.0-gh

[IMP] repo: From Travis to GH Actions
pull/877/head
Enric Tobella 2022-03-30 17:14:50 +02:00 committed by GitHub
commit 897bd6e344
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 133 additions and 62 deletions

View File

@ -1,14 +1,18 @@
# Do NOT update manually; changes here will be overwritten by Copier # Do NOT update manually; changes here will be overwritten by Copier
_commit: v1.3.6 _commit: v1.5.2
_src_path: https://github.com/OCA/oca-addons-repo-template.git _src_path: https://github.com/OCA/oca-addons-repo-template.git
ci: Travis ci: GitHub
dependency_installation_mode: OCA dependency_installation_mode: PIP
generate_requirements_txt: true generate_requirements_txt: true
include_wkhtmltopdf: false include_wkhtmltopdf: false
odoo_version: 13.0 odoo_version: 13.0
rebel_module_groups: [] org_name: Odoo Community Association (OCA)
org_slug: OCA
rebel_module_groups:
- mail_restrict_follower_selection
repo_description: Addons concerning Odoo's social features and messaging in general. repo_description: Addons concerning Odoo's social features and messaging in general.
repo_name: Social addons for Odoo repo_name: Social addons for Odoo
repo_slug: social repo_slug: social
repo_website: https://github.com/OCA/social
travis_apt_packages: [] travis_apt_packages: []
travis_apt_sources: [] travis_apt_sources: []

View File

@ -4,7 +4,7 @@ env:
# See https://github.com/OCA/odoo-community.org/issues/37#issuecomment-470686449 # See https://github.com/OCA/odoo-community.org/issues/37#issuecomment-470686449
parserOptions: parserOptions:
ecmaVersion: 2017 ecmaVersion: 2019
overrides: overrides:
- files: - files:

View File

@ -2,7 +2,12 @@ name: pre-commit
on: on:
pull_request: pull_request:
branches:
- "13.0*"
push: push:
branches:
- "13.0"
- "13.0-ocabot-*"
jobs: jobs:
pre-commit: pre-commit:
@ -17,4 +22,21 @@ jobs:
# where we are not using black > 21. Older black versions won't work with # 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 3.9.8+, and we can't bump black without reformatting.
python-version: "3.9.7" 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

View File

@ -0,0 +1,11 @@
diff a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml (rejected hunks)
@@ -17,2 +17,9 @@ jobs:
- uses: actions/setup-python@v2
+ with:
+ # The pylint-odoo version we use here does not support python 3.10
+ # https://github.com/OCA/oca-addons-repo-template/issues/80
+ # We also need to pin to an older version of python for older odoo versions
+ # 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"
- name: Get python version

81
.github/workflows/test.yml vendored 100644
View File

@ -0,0 +1,81 @@
name: tests
on:
pull_request:
branches:
- "13.0*"
push:
branches:
- "13.0"
- "13.0-ocabot-*"
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-odoo13.0:latest
include: "mail_restrict_follower_selection"
makepot: "true"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.6-ocb13.0:latest
include: "mail_restrict_follower_selection"
name: test with OCB
- container: ghcr.io/oca/oca-ci/py3.6-odoo13.0:latest
exclude: "mail_restrict_follower_selection"
makepot: "true"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.6-ocb13.0:latest
exclude: "mail_restrict_follower_selection"
name: test with OCB
services:
postgres:
image: postgres:9.6
env:
POSTGRES_USER: odoo
POSTGRES_PASSWORD: odoo
POSTGRES_DB: odoo
ports:
- 5432:5432
env:
INCLUDE: "${{ matrix.include }}"
EXCLUDE: "${{ matrix.exclude }}"
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' }}

View File

@ -5,7 +5,7 @@ exclude: |
# Files and folders generated by bots, to avoid loops # Files and folders generated by bots, to avoid loops
^setup/|/static/description/index\.html$| ^setup/|/static/description/index\.html$|
# We don't want to mess with tool-generated files # We don't want to mess with tool-generated files
.svg$|/tests/([^/]+/)?cassettes/|^.copier-answers.yml$| .svg$|/tests/([^/]+/)?cassettes/|^.copier-answers.yml$|^.github/|
# Maybe reactivate this when all README files include prettier ignore tags? # Maybe reactivate this when all README files include prettier ignore tags?
^README\.md$| ^README\.md$|
# Library files can have extraneous formatting (even minimized) # Library files can have extraneous formatting (even minimized)
@ -49,6 +49,7 @@ repos:
rev: 19.10b0 rev: 19.10b0
hooks: hooks:
- id: black - id: black
additional_dependencies: ["click<8.1.0"]
- repo: https://github.com/pre-commit/mirrors-prettier - repo: https://github.com/pre-commit/mirrors-prettier
rev: v1.19.1 rev: v1.19.1
hooks: hooks:

View File

@ -1,51 +0,0 @@
language: python
cache:
directories:
- $HOME/.cache/pip
- $HOME/.cache/pre-commit
python:
- "3.6"
addons:
postgresql: "9.6"
apt:
packages:
- expect-dev # provides unbuffer utility
stages:
- test
jobs:
include:
# Test separately: mail_restrict_follower_selection
- stage: test
env:
- TESTS=1 ODOO_REPO="odoo/odoo" MAKEPOT=1
INCLUDE="mail_restrict_follower_selection"
- stage: test
env:
- TESTS=1 ODOO_REPO="OCA/OCB" INCLUDE="mail_restrict_follower_selection"
# Test all other addons together
- stage: test
env:
- TESTS=1 ODOO_REPO="odoo/odoo" MAKEPOT=1
EXCLUDE="mail_restrict_follower_selection"
- stage: test
env:
- TESTS=1 ODOO_REPO="OCA/OCB" EXCLUDE="mail_restrict_follower_selection"
env:
global:
- VERSION="13.0" TESTS="0" LINT_CHECK="0" MAKEPOT="0"
install:
- git clone --depth=1 https://github.com/OCA/maintainer-quality-tools.git
${HOME}/maintainer-quality-tools
- export PATH=${HOME}/maintainer-quality-tools/travis:${PATH}
- travis_install_nightly
script:
- travis_run_tests
after_success:
- travis_after_tests_success

View File

@ -1,5 +1,7 @@
[![Runbot Status](https://runbot.odoo-community.org/runbot/badge/flat/205/13.0.svg)](https://runbot.odoo-community.org/runbot/repo/github-com-oca-social-205)
[![Build Status](https://travis-ci.com/OCA/social.svg?branch=13.0)](https://travis-ci.com/OCA/social) [![Runboat](https://img.shields.io/badge/runboat-Try%20me-875A7B.png)](https://runboat.odoo-community.org/builds?repo=OCA/social&target_branch=13.0)
[![Pre-commit Status](https://github.com/OCA/social/actions/workflows/pre-commit.yml/badge.svg?branch=13.0)](https://github.com/OCA/social/actions/workflows/pre-commit.yml?query=branch%3A13.0)
[![Build Status](https://github.com/OCA/social/actions/workflows/test.yml/badge.svg?branch=13.0)](https://github.com/OCA/social/actions/workflows/test.yml?query=branch%3A13.0)
[![codecov](https://codecov.io/gh/OCA/social/branch/13.0/graph/badge.svg)](https://codecov.io/gh/OCA/social) [![codecov](https://codecov.io/gh/OCA/social/branch/13.0/graph/badge.svg)](https://codecov.io/gh/OCA/social)
[![Translation Status](https://translation.odoo-community.org/widgets/social-13-0/-/svg-badge.svg)](https://translation.odoo-community.org/engage/social-13-0/?utm_source=widget) [![Translation Status](https://translation.odoo-community.org/widgets/social-13-0/-/svg-badge.svg)](https://translation.odoo-community.org/engage/social-13-0/?utm_source=widget)
@ -63,12 +65,11 @@ addon | version | maintainers | summary
This repository is licensed under [AGPL-3.0](LICENSE). This repository is licensed under [AGPL-3.0](LICENSE).
However, each module can have a totally different license, as long as they adhere to OCA However, each module can have a totally different license, as long as they adhere to Odoo Community Association (OCA)
policy. Consult each module's `__manifest__.py` file, which contains a `license` key policy. Consult each module's `__manifest__.py` file, which contains a `license` key
that explains its license. that explains its license.
---- ----
OCA, or the [Odoo Community Association](http://odoo-community.org/), is a nonprofit OCA, or the [Odoo Community Association](http://odoo-community.org/), is a nonprofit
organization whose mission is to support the collaborative development of Odoo features organization whose mission is to support the collaborative development of Odoo features
and promote its widespread use. and promote its widespread use.

View File

@ -0,0 +1,2 @@
odoo_test_helper
freezegun