bitwarden_workflow_linter 1.1.2__tar.gz → 1.1.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/bwwl_operations.yml +7 -0
  2. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/ci.yml +17 -4
  3. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/scan.yaml +4 -4
  4. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/scan.yml +4 -0
  5. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/PKG-INFO +1 -1
  6. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/__about__.py +1 -1
  7. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/cli.py +2 -2
  8. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.editorconfig +0 -0
  9. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.gitattributes +0 -0
  10. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/CODEOWNERS +0 -0
  11. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  12. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  13. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/actionlint.yml +0 -0
  14. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/renovate.json +0 -0
  15. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/_version_type.yml +0 -0
  16. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/actionlint_windows.yml +0 -0
  17. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/cd.yml +0 -0
  18. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/enforce-labels.yml +0 -0
  19. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/ci.yaml +0 -0
  20. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/example-references/_build.yml +0 -0
  21. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/example-references/_docker.yml +0 -0
  22. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/example-references/_test.yml +0 -0
  23. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/example-references/_version.yml +0 -0
  24. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/example.yaml +0 -0
  25. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.github/workflows/examples/pull_request_target.yml +0 -0
  26. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.gitignore +0 -0
  27. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.husky/pre-commit +0 -0
  28. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/.python-version +0 -0
  29. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/CONTRIBUTING.md +0 -0
  30. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/LICENSE.txt +0 -0
  31. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/Pipfile +0 -0
  32. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/Pipfile.lock +0 -0
  33. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/README.md +0 -0
  34. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/RULE_ROLLOUT.md +0 -0
  35. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/SECURITY.md +0 -0
  36. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/Taskfile.yml +0 -0
  37. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/package-lock.json +0 -0
  38. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/package.json +0 -0
  39. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/pylintrc +0 -0
  40. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/pyproject.toml +0 -0
  41. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/pyproject.toml.tpl +0 -0
  42. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/settings.yaml +0 -0
  43. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/__init__.py +0 -0
  44. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/actionlint_version.yaml +0 -0
  45. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/actions.py +0 -0
  46. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/default_actions.json +0 -0
  47. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/default_settings.yaml +0 -0
  48. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/lint.py +0 -0
  49. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/load.py +0 -0
  50. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/models/__init__.py +0 -0
  51. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/models/job.py +0 -0
  52. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/models/step.py +0 -0
  53. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/models/workflow.py +0 -0
  54. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rule.py +0 -0
  55. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/__init__.py +0 -0
  56. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/check_pr_target.py +0 -0
  57. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/job_environment_prefix.py +0 -0
  58. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/name_capitalized.py +0 -0
  59. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/name_exists.py +0 -0
  60. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/permissions_exist.py +0 -0
  61. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/pinned_job_runner.py +0 -0
  62. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/run_actionlint.py +0 -0
  63. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/step_approved.py +0 -0
  64. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/step_pinned.py +0 -0
  65. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/rules/underscore_outputs.py +0 -0
  66. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/src/bitwarden_workflow_linter/utils.py +0 -0
  67. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/__init__.py +0 -0
  68. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/conftest.py +0 -0
  69. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test-alt.yml +0 -0
  70. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test-min-incorrect.yaml +0 -0
  71. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test-min.yaml +0 -0
  72. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test-outputs-incorrect.yml +0 -0
  73. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test.yml +0 -0
  74. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test_a.yaml +0 -0
  75. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test_workflow.yaml +0 -0
  76. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/fixtures/test_workflow_incorrect.yaml +0 -0
  77. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/__init__.py +0 -0
  78. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_check_pr_target.py +0 -0
  79. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_job_environment_prefix.py +0 -0
  80. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_name_capitalized.py +0 -0
  81. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_name_exists.py +0 -0
  82. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_permissions_exist.py +0 -0
  83. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_pinned_job_runner.py +0 -0
  84. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_run_actionlint.py +0 -0
  85. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_step_approved.py +0 -0
  86. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_step_pinned.py +0 -0
  87. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/rules/test_underscore_output.py +0 -0
  88. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/test_job.py +0 -0
  89. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/test_lint.py +0 -0
  90. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/test_load.py +0 -0
  91. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/test_rule.py +0 -0
  92. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/test_step.py +0 -0
  93. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/test_utils.py +0 -0
  94. {bitwarden_workflow_linter-1.1.2 → bitwarden_workflow_linter-1.1.4}/tests/test_workflow.py +0 -0
@@ -18,6 +18,9 @@ jobs:
18
18
  actions-operation:
19
19
  name: "Approved actions operations"
20
20
  runs-on: ubuntu-24.04
21
+ permissions:
22
+ contents: write
23
+ pull-requests: write
21
24
  env:
22
25
  _ACTION: ${{ inputs.action }}
23
26
  steps:
@@ -78,10 +81,14 @@ jobs:
78
81
 
79
82
  - name: Run bwwl update
80
83
  if: ${{ github.event_name == 'schedule' || inputs.operation == 'update' }}
84
+ env:
85
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Avoid rate limiting
81
86
  run: bwwl actions update -o src/bitwarden_workflow_linter/default_actions.json
82
87
 
83
88
  - name: Run bwwl add
84
89
  if: ${{ inputs.operation == 'add' }}
90
+ env:
91
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Avoid rate limiting
85
92
  run: bwwl actions add -o src/bitwarden_workflow_linter/default_actions.json "$_ACTION"
86
93
 
87
94
  - name: Check for changes to commit
@@ -36,6 +36,9 @@ jobs:
36
36
  - name: Check type hinting
37
37
  run: pipenv run pytype src
38
38
 
39
+ - name: Install local bwwl binary
40
+ run: pipenv run pip install -e .
41
+
39
42
  - name: Test against example workflows
40
43
  # run notes:
41
44
  # - Changing directories will help catch any repo specific paths in the linter
@@ -43,7 +46,17 @@ jobs:
43
46
  # - Changing directories utilizes the default_settings.yaml rather than this repos
44
47
  # settings.yaml, which better simulates running from another repository
45
48
  # - Using strict to ensure that our examples pass all checks including warnings
46
- run: |
47
- pipenv run pip install -e .
48
- cd .github/workflows
49
- pipenv run bwwl lint --strict -f ./examples
49
+ working-directory: .github/workflows
50
+ run: pipenv run bwwl lint --strict -f ./examples
51
+
52
+ - name: Test bwwl actions - add
53
+ env:
54
+ _ACTION: bitwarden/gh-actions
55
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Avoid rate limiting
56
+ run: pipenv run bwwl actions add -o src/bitwarden_workflow_linter/default_actions.json "$_ACTION"
57
+
58
+ # TODO: Add this test back in and added related error logging to fix the underlying issue
59
+ # - name: Test bwwl actions - update
60
+ # env:
61
+ # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Avoid rate limiting
62
+ # run: pipenv run bwwl actions update -o src/bitwarden_workflow_linter/default_actions.json
@@ -7,10 +7,6 @@
7
7
 
8
8
  name: Scan
9
9
 
10
- permissions:
11
- read-all # Sets permissions of the GITHUB_TOKEN
12
- # More info: https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#permissions
13
-
14
10
  on:
15
11
  # Controls when the workflow will run
16
12
 
@@ -31,6 +27,8 @@ on:
31
27
  types: [opened, synchronize] # Options include labeled, unlabeled, reopened
32
28
  branches: "main"
33
29
 
30
+ permissions: {}
31
+
34
32
  # A workflow run is made up of one or more jobs that can run sequentially or in
35
33
  # parallel
36
34
  jobs:
@@ -41,6 +39,8 @@ jobs:
41
39
  name: Check PR run # Human readable descriptor
42
40
  # location and branch of bitwarden-owned action being used
43
41
  uses: bitwarden/gh-actions/.github/workflows/check-run.yml@main
42
+ permissions:
43
+ contents: read
44
44
 
45
45
  sast:
46
46
  # A more complex job that has multiple actions as steps described below
@@ -16,10 +16,14 @@ on:
16
16
  branches:
17
17
  - "main"
18
18
 
19
+ permissions: {}
20
+
19
21
  jobs:
20
22
  check-run:
21
23
  name: Check PR run
22
24
  uses: bitwarden/gh-actions/.github/workflows/check-run.yml@main
25
+ permissions:
26
+ contents: read
23
27
 
24
28
  sast:
25
29
  name: SAST scan
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bitwarden_workflow_linter
3
- Version: 1.1.2
3
+ Version: 1.1.4
4
4
  Summary: Custom GitHub Action Workflow Linter
5
5
  Project-URL: Homepage, https://github.com/bitwarden/workflow-linter
6
6
  Project-URL: Issues, https://github.com/bitwarden/workflow-linter/issues
@@ -1,3 +1,3 @@
1
1
  """Metadata for Workflow Linter."""
2
2
 
3
- __version__ = "1.1.2"
3
+ __version__ = "1.1.4"
@@ -36,9 +36,9 @@ def main(input_args: Optional[List[str]] = None) -> int:
36
36
  raise SystemExit(parser.print_help())
37
37
 
38
38
  args = parser.parse_args(input_args)
39
- if len(args.files) > 1:
40
- raise parser.error("Only one -f / --files flag must be specified")
41
39
  if args.command == "lint":
40
+ if len(args.files) > 1:
41
+ raise parser.error("Only one -f / --files flag must be specified")
42
42
  return linter_cmd.run(args.files[0], args.strict)
43
43
 
44
44
  if args.command == "actions":