Closed eviljeff closed 3 years ago
We'll need to check with Mozilla Github ops (#github-admin:mozilla.org
on Matrix), as it's disabled org-wide at the moment. There were security concerns initially, which I think can be addressed with some configuration, but more importantly some cost questions (because of the plan Mozilla is under for Github)
re: cost, https://github.com/pricing (and other pages) state "Free for public repositories" - that may be something that conflicts with our (legacy) org settings on github though.
progress with https://github.com/eviljeff/olympia/blob/actions-investigation-flat/.github/workflows/test.yml 6 of 9 jobs passing. The following tests are still failing:
FAILED src/olympia/reviewers/tests/test_utils.py::TestReviewHelperSigning::test_nominated_to_public_recommended FAILED src/olympia/reviewers/tests/test_utils.py::TestReviewHelperSigning::test_nomination_to_public
_ TestMonitor.test_signer __ ____ TestSigning.test_callsigning ____ __ TestSigning.test_call_signing_on_file_in_guarded_file_path __
FAILED src/olympia/git/tests/test_utils.py::test_temporary_worktree - Asserti... ~FAILED src/olympia/git/tests/test_utils.py::test_get_mime_type_for_blob[entry19-foo.ts-text-text/javascript]~
the 2 fails and 3 errors appear to be autograph related. The remaining 1 main test fail cause is unclear.
progress with https://github.com/eviljeff/olympia/blob/actions-investigation-flat/.github/workflows/test.yml - a single failing test remains:
=================================== FAILURES ===================================
___________________________ test_temporary_worktree ____________________________
[gw1] linux -- Python 3.8.6 /home/runner/work/olympia/olympia/.tox/main/bin/python3
src/olympia/git/tests/test_utils.py:93: in test_temporary_worktree
assert output.startswith(repo.git_repository.path)
E AssertionError: assert False
E + where False = <built-in method startswith of str object at 0x7fd365f3bd40>('/tmp/pytest-of-runner/pytest-0/popen-gw1/test_temporary_worktree0/storage/git-storage/1/1/1/addon/.git/')
E + where <built-in method startswith of str object at 0x7fd365f3bd40> = '/tmp/pytest-of-runner/pytest-0/popen-gw1/test_temporary_worktree0/storage/git-storage/1/1/1/addon 7b746ff [master]\n'.startswith
E + and '/tmp/pytest-of-runner/pytest-0/popen-gw1/test_temporary_worktree0/storage/git-storage/1/1/1/addon/.git/' = pygit2.Repository('/tmp/pytest-of-runner/pytest-0/popen-gw1/test_temporary_worktree0/storage/git-storage/1/1/1/addon/.git/').path
E + where pygit2.Repository('/tmp/pytest-of-runner/pytest-0/popen-gw1/test_temporary_worktree0/storage/git-storage/1/1/1/addon/.git/') = <olympia.git.utils.AddonGitRepository object at 0x7fd368cc4d60>.git_repository
output = ('/tmp/pytest-of-runner/pytest-0/popen-gw1/test_temporary_worktree0/storage/git-storage/1/1/1/addon '
'7b746ff [master]\n')
repo = <olympia.git.utils.AddonGitRepository object at 0x7fd368cc4d60>
settings = <pytest_django.fixtures.SettingsWrapper object at 0x7fd367355fa0>
------------------------------ Captured log call -------------------------------
INFO z.git_storage:utils.py:245 Initialized git repository "/tmp/pytest-of-runner/pytest-0/popen-gw1/test_temporary_worktree0/storage/git-storage/1/1/1/addon"
https://github.com/eviljeff/olympia/blob/actions-investigation-flat/.github/workflows/test.yml
Apart from the last remaining failing test, there are no other blockers on CI side.
Re: security concerns - it's possible to limit actions to just github provided ones, or by wildcard, so I don't know if that would assuage some of the concerns.
Annoyances/deficiencies vs. travis:
Improvements:
Process completed with exit code 1.
currently which is a bit pointless)We switched to circle-ci so we probably don't need this issue anymore? at least, not until circle-ci goes crazy?
Afaik the position on github actions (which may have shifted while I was off) was that it was the desirable end solution, but we didn't want to jump into it while the security and org-operational aspects were still up in the air. Switching to Circle-ci in the mean-time was forced on us by travis-ci.
Given the recent changes at travis-ci we want to investigate if github actions is a viable alternative