diff --git a/.github/workflows/ci_full.yml b/.github/workflows/ci_full.yml new file mode 100644 index 0000000000..2fa0d2554b --- /dev/null +++ b/.github/workflows/ci_full.yml @@ -0,0 +1,105 @@ +--- +name: galaxy_ng/ci +on: + pull_request: + branches: + - '*' + workflow_dispatch: + +jobs: + + check_commit: + runs-on: ubuntu-latest + steps: + + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: ${{ github.event.after }} # for PR avoids checking out merge commit + fetch-depth: 0 # include all history + + - name: Run script to validate commits for both pull request and a push + env: + PY_COLORS: '1' + ANSIBLE_FORCE_COLOR: '1' + GITHUB_PULL_REQUEST: ${{ github.event.number }} + GITHUB_PULL_REQUEST_BODY: ${{ github.event.pull_request.body }} + GITHUB_BRANCH: ${{ github.head_ref }} + GITHUB_REPO_SLUG: ${{ github.repository }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_CONTEXT: ${{ github.event.pull_request.commits_url }} + GITHUB_USER: ${{ github.event.pull_request.user.login }} + GITHUB_PR_COMMITS_URL: ${{ github.event.pull_request.commits_url }} + START_COMMIT: ${{ github.event.before }} + END_COMMIT: ${{ github.event.after }} + run: | + python .ci/scripts/validate_commit_message_custom.py + + lint_po: + runs-on: ubuntu-latest + steps: + + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: ${{ github.event.after }} # for PR avoids checking out merge commit + fetch-depth: 0 # include all history + + - name: intsall and run lint-po + run: | + pip install lint-po + lint-po ./galaxy_ng/locale/*/LC_MESSAGES/*.po + + lint: + runs-on: ubuntu-latest + steps: + + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: ${{ github.event.after }} # for PR avoids checking out merge commit + fetch-depth: 0 # include all history + + - uses: actions/setup-python@v4 + with: + python-version: "3.11" + + - name: Install requirements + run: pip3 install -r lint_requirements.txt + + - name: Run extra lint checks + run: "[ ! -x .ci/scripts/extra_linting.sh ] || .ci/scripts/extra_linting.sh" + + - name: Check manifest + run: check-manifest + + - name: Check for pulpcore imports outside of pulpcore.plugin + run: sh .ci/scripts/check_pulpcore_imports.sh + + - name: Check for gettext problems + run: sh .ci/scripts/check_gettext.sh + + test: + runs-on: ubuntu-latest + steps: + + - uses: actions/setup-python@v4 + with: + python-version: "3.11" + + - uses: actions/checkout@v4 + + - name: install ansible + run: pip3 install ansible + + - name: run the build container playbook + run: cd dev/playbooks; ansible-playbook -i 'localhost,' --forks=1 -v build_container.yaml + + - name: run the start container playbook + run: cd dev/playbooks; ansible-playbook -i 'localhost,' --forks=1 -v start_container.yaml + + - name: run the unit test playbook + run: cd dev/playbooks; ansible-playbook -i 'localhost,' --forks=1 -v run_unit_tests.yaml + + - name: run the functional test playbook + run: cd dev/playbooks; ansible-playbook -i 'localhost,' --forks=1 -v run_functional_tests.yaml diff --git a/.github/workflows/ci_units.yml b/.github/workflows/ci_units.yml deleted file mode 100644 index 9aef826d7a..0000000000 --- a/.github/workflows/ci_units.yml +++ /dev/null @@ -1,31 +0,0 @@ ---- -name: unit tests -on: - pull_request: - branches: - - '*' - workflow_dispatch: - -jobs: - - validation: - runs-on: ubuntu-latest - steps: - - - uses: actions/setup-python@v4 - with: - python-version: "3.11" - - - uses: actions/checkout@v4 - - - name: install ansible - run: pip3 install ansible - - - name: run the build container playbook - run: cd dev/playbooks; ansible-playbook -i 'localhost,' --forks=1 -v build_container.yaml - - - name: run the start container playbook - run: cd dev/playbooks; ansible-playbook -i 'localhost,' --forks=1 -v start_container.yaml - - - name: run the unit test playbook - run: cd dev/playbooks; ansible-playbook -i 'localhost,' --forks=1 -v run_unit_tests.yaml