Browse Source
👷♂️ sync DINAR
👷♂️ sync DINAR
Pushed from https://github.com/itpp-labs/DINAR/.github/workflows/fork2repos.ymlpull/332/head
Github Actions
4 years ago
4 changed files with 153 additions and 44 deletions
@ -0,0 +1,118 @@ |
|||
# Copyright 2020 IT Projects Labs |
|||
# |
|||
# Licensed under the Apache License, Version 2.0 (the "License"); |
|||
# you may not use this file except in compliance with the License. |
|||
# You may obtain a copy of the License at |
|||
# |
|||
# http://www.apache.org/licenses/LICENSE-2.0 |
|||
# |
|||
# Unless required by applicable law or agreed to in writing, software |
|||
# distributed under the License is distributed on an "AS IS" BASIS, |
|||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|||
# See the License for the specific language governing permissions and |
|||
# limitations under the License. |
|||
name: "Port module" |
|||
|
|||
on: |
|||
issues: |
|||
types: |
|||
- opened |
|||
- reopened |
|||
|
|||
jobs: |
|||
port: |
|||
runs-on: ubuntu-latest |
|||
if: "startsWith(github.event.issue.title, 'DINAR-PORT ')" |
|||
steps: |
|||
- name: Post a message |
|||
uses: KeisukeYamashita/create-comment@v1 |
|||
with: |
|||
comment: |
|||
"Porting is started. Check logs: https://github.com/${{ github.repository |
|||
}}/actions/runs/${{ github.run_id }}" |
|||
- name: Checkout DINAR |
|||
uses: actions/checkout@v2 |
|||
with: |
|||
path: DINAR |
|||
repository: itpp-labs/DINAR-fork |
|||
ref: master |
|||
- uses: actions/setup-python@v2 |
|||
with: |
|||
python-version: "3.7.x" |
|||
- name: Install python tools |
|||
run: | |
|||
pip install plumbum pre-commit git-aggregator |
|||
- name: Check Python Version |
|||
run: |
|||
echo "PY=$(python --version --version | sha256sum | cut -d' ' -f1)" >> |
|||
$GITHUB_ENV |
|||
- name: Checkout Repo |
|||
uses: actions/checkout@v2 |
|||
with: |
|||
path: REPO |
|||
fetch-depth: 0 |
|||
ref: ${{ env.PORT_TO_BRANCH }} |
|||
- uses: actions/cache@v1 |
|||
with: |
|||
path: ~/.cache/pre-commit |
|||
key: pre-commit|${{ env.PY }}|${{ hashFiles('REPO/.pre-commit-config.yaml') }} |
|||
- name: Analyze request |
|||
run: | |
|||
# sets environment variables that available in next steps via $ {{ env.PORT_... }} notation |
|||
python DINAR/workflow-files/analyze_port_trigger.py "${{ github.event.issue.title }}" |
|||
- name: Copy module to new branch |
|||
run: | |
|||
git config --global user.email "itpp-bot@users.noreply.github.com" |
|||
git config --global user.name "Mitchell Admin" |
|||
cd REPO |
|||
if [ ! -d ${{ env.PORT_MODULE }} ] |
|||
then |
|||
# apply original commit history |
|||
if ! git format-patch --keep-subject --stdout origin/${{ env.PORT_TO_BRANCH }}..origin/${{ env.PORT_FROM_BRANCH }} -- ${{ env.PORT_MODULE }} | git am -3 --keep |
|||
then |
|||
# git am failed |
|||
git am --abort |
|||
|
|||
# just copy source |
|||
git checkout origin/${{ env.PORT_FROM_BRANCH }} -- ${{ env.PORT_MODULE }} |
|||
git commit -m ":tada:${{ env.PORT_FROM_BRANCH_TAGS }} ${{ env.PORT_MODULE }} |
|||
previous commits history: https://github.com/${{ github.repository }}/commits/${{ env.PORT_FROM_BRANCH }}/ir_rule_protected |
|||
|
|||
> Made via .github/workflows/DINAR-PORT.yml" |
|||
fi |
|||
fi |
|||
- name: make OCA/odoo-module-migrator |
|||
run: | |
|||
gitaggregate -c DINAR/workflow-files/odoo-module-migrator-mix.yml |
|||
pip install -e ./odoo-module-migrator |
|||
- name: apply OCA/odoo-module-migrator |
|||
run: | |
|||
cd REPO |
|||
odoo-module-migrate \ |
|||
--modules ${{ env.PORT_MODULE }} \ |
|||
--init-version-name ${{ env.PORT_FROM_BRANCH }} \ |
|||
--target-version-name ${{ env.PORT_TO_BRANCH }} \ |
|||
--no-commit |
|||
git add -A |
|||
git commit -m ":arrow_up:${{ env.PORT_TO_BRANCH_TAGS }} OCA/odoo-module-migrator |
|||
|
|||
close #${{ github.event.issue.number }} |
|||
|
|||
> Made via .github/workflows/DINAR-PORT.yml" |
|||
- name: pre-commit |
|||
run: | |
|||
cd REPO |
|||
pre-commit run --files $(find ${{ env.PORT_MODULE }} -type f) || true |
|||
git add -A |
|||
git commit -m ":rainbow: pre-commit |
|||
> Made via .github/workflows/DINAR-PORT.yml" || echo "pre-commit: no changes" |
|||
- name: PR |
|||
uses: peter-evans/create-pull-request@v3 |
|||
with: |
|||
path: REPO |
|||
# GITHUB_TOKEN would not trigger PR checks |
|||
token: ${{ secrets.DINAR_TOKEN }} |
|||
branch: ${{ env.PORT_TO_BRANCH }}-${{ env.PORT_MODULE }} |
|||
title: "[${{ env.PORT_TO_BRANCH }}] ${{ env.PORT_MODULE }}" |
|||
body: | |
|||
Made by [DINAR](https://github.com/itpp-labs/DINAR#readme) by request in #${{ github.event.issue.number }} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue