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
_commit: v1.3.6
_commit: v1.5.2
_src_path: https://github.com/OCA/oca-addons-repo-template.git
ci: Travis
dependency_installation_mode: OCA
ci: GitHub
dependency_installation_mode: PIP
generate_requirements_txt: true
include_wkhtmltopdf: false
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_name: Social addons for Odoo
repo_slug: social
repo_website: https://github.com/OCA/social
travis_apt_packages: []
travis_apt_sources: []

View File

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

View File

@ -2,7 +2,12 @@ name: pre-commit
on:
pull_request:
branches:
- "13.0*"
push:
branches:
- "13.0"
- "13.0-ocabot-*"
jobs:
pre-commit:
@ -17,4 +22,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

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
^setup/|/static/description/index\.html$|
# 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?
^README\.md$|
# Library files can have extraneous formatting (even minimized)
@ -49,6 +49,7 @@ repos:
rev: 19.10b0
hooks:
- id: black
additional_dependencies: ["click<8.1.0"]
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v1.19.1
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)
[![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).
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
that explains its license.
----
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
and promote its widespread use.

View File

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