Skip to content

Commit

Permalink
Add automation (mostly inherited from Mock)
Browse files Browse the repository at this point in the history
  • Loading branch information
praiskup authored and FrostyX committed Nov 13, 2024
1 parent a0315ba commit b170f76
Show file tree
Hide file tree
Showing 4 changed files with 212 additions and 0 deletions.
15 changes: 15 additions & 0 deletions .github/workflows/new-issues-to-board.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
name: Move new issues to issues review

on:
issues:
types: [opened]

jobs:
move-new-issue:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
with:
project-url: https://github.com/orgs/fedora-copr/projects/1
github-token: ${{ secrets.ADD_TO_PROJECT_PAT }}
35 changes: 35 additions & 0 deletions .github/workflows/python-diff-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
name: Lint Python issues

on:
push:
pull_request:
branches: [main]

jobs:
python-lint-job:
runs-on: ubuntu-latest
steps:
- name: Repository checkout
uses: actions/checkout@v4

- name: VCS Diff Lint
uses: fedora-copr/vcs-diff-lint-action@v1
id: VCS_Diff_Lint
with:
linter_tags: |
ruff
pylint
- name: Upload artifact with detected defects in SARIF format
uses: actions/upload-artifact@v4
with:
name: VCS Diff Lint SARIF
path: ${{ steps.VCS_Diff_Lint.outputs.sarif }}
if: ${{ always() }}

- name: Upload SARIF to GitHub using github/codeql-action/upload-sarif
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: ${{ steps.VCS_Diff_Lint.outputs.sarif }}
if: ${{ always() }}
39 changes: 39 additions & 0 deletions .packit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# See the documentation for more information:
# https://packit.dev/docs/configuration/

---
require:
label:
absent:
- no-ci-builds

actions:
create-archive:
- bash -c "tito build --tgz --test -o ."
- bash -c "ls -1t ./*.tar.gz | head -n 1"
get-current-version:
- bash -c "grep ^Version \"$PACKIT_CONFIG_PACKAGE_NAME.spec\" | awk '{ print $2 }'"

packages:
fedora-distro-aliases:
specfile_path: fedora-distro-aliases.spec
downstream_package_name: fedora-distro-aliases
upstream_tag_template: fedora-distro-aliases-{version}
srpm_build_deps:
- tito
- git

jobs:
- <<: &pr_build
job: copr_build
trigger: pull_request
packages:
- fedora-distro-aliases
targets:
- fedora-all

- <<: *pr_build
trigger: commit
owner: "@rpm-software-management"
project: "fedora-distro-aliases"
branch: main
123 changes: 123 additions & 0 deletions pylintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
# fedora-distro-aliases pylintrc (originally taken from Mock)

[MAIN]

# Pickle collected data for later comparisons.
persistent=no

[MESSAGES CONTROL]

# Reasoning for wide warning ignore
# ---------------------------------
# import-error
# This is here to silence Pylint in CI where we do not have all the
# build/runtime dependencies installed.
# cyclic-import
# Seems like cyclic-import is just a style check which is not going to be
# fixed: https://github.com/PyCQA/pylint/issues/6983
disable=import-error,cyclic-import

[REPORTS]

# Set the output format. Available formats are text, parseable, colorized, msvs
# (visual studio) and html
output-format=text

# Tells whether to display a full report or only the messages
reports=no


[VARIABLES]

# A regular expression matching names used for dummy variables (i.e. not used).
dummy-variables-rgx=_|dummy


[BASIC]

# Regular expression which should only match correct module names
#module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
module-rgx=([a-zA-Z_][a-zA-Z0-9_]+)$

# Regular expression which should only match correct module level names
const-rgx=(([a-zA-Z_][a-zA-Z0-9_]*)|(__.*__))$

# Regular expression which should only match correct class names
class-rgx=[a-zA-Z_][a-zA-Z0-9_]+$

# Regular expression which should only match correct function names
function-rgx=[a-z_][a-zA-Z0-9_]{,42}$

# Regular expression which should only match correct method names
method-rgx=[a-z_][a-zA-Z0-9_]{,42}$

# Regular expression which should only match correct instance attribute names
attr-rgx=[a-z_][a-zA-Z0-9_]{,30}$

# Regular expression which should only match correct argument names
argument-rgx=[a-z_][a-zA-Z0-9_]{,30}$

# Regular expression which should only match correct variable names
variable-rgx=[a-z_][a-zA-Z0-9_]{,30}$

# Regular expression which should only match correct list comprehension /
# generator expression variable names
inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$

# Regular expression which should only match correct class sttribute names
class-attribute-rgx=([A-Za-z_][A-Za-z0-9_]{2,42}|(__.*__))$

# Good variable names which should always be accepted, separated by a comma
good-names=i,j,k,ex,Run,_

# Bad variable names which should always be refused, separated by a comma
bad-names=foo,bar,baz,toto,tutu,tata


[DESIGN]

# Maximum number of arguments for function / method
max-args=10

# Maximum number of locals for function / method body
max-locals=20

# Maximum number of return / yield for function / method body
max-returns=6

# Maximum number of branch for function / method body
max-branches=20

# Maximum number of statements in function / method body
max-statements=50

# Maximum number of parents for a class (see R0901).
max-parents=7

# Maximum number of attributes for a class (see R0902).
max-attributes=7

# Minimum number of public methods for a class (see R0903).
min-public-methods=1

# Maximum number of public methods for a class (see R0904).
max-public-methods=20


[FORMAT]

# Maximum number of characters on a single line.
max-line-length=120

# Maximum number of lines in a module
max-module-lines=2000

# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
# tab).
indent-string=' '


[MISCELLANEOUS]

# List of note tags to take in consideration, separated by a comma.
notes=

1 comment on commit b170f76

@packit-as-a-service
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Based on your Packit configuration the settings of the @rpm-software-management/fedora-distro-aliases Copr project would need to be updated as follows:

field old value new value
chroots ['fedora-40-x86_64', 'fedora-41-x86_64', 'fedora-rawhide-x86_64'] ['fedora-39-x86_64', 'fedora-40-x86_64', 'fedora-41-x86_64', 'fedora-rawhide-x86_64']

Diff of chroots:

+fedora-39-x86_64

Packit was unable to update the settings above as it is missing admin permissions on the @rpm-software-management/fedora-distro-aliases Copr project.

To fix this you can do one of the following:

  • Grant Packit admin permissions on the @rpm-software-management/fedora-distro-aliases Copr project on the permissions page.
  • Change the above Copr project settings manually on the settings page to match the Packit configuration.
  • Update the Packit configuration to match the Copr project settings.

Please retrigger the build, once the issue above is fixed.

Please sign in to comment.