Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues/95: Add CICD pipeline #101

Merged
merged 14 commits into from
Aug 7, 2024
Merged

Issues/95: Add CICD pipeline #101

merged 14 commits into from
Aug 7, 2024

Conversation

frankinspace
Copy link
Collaborator

@frankinspace frankinspace commented Aug 1, 2024

Github Issue: #95

Description

Transition to a python poetry project and apply CICD workflow for build and publishing artifacts.

Overview of work done

  • Switch to using poetry build
  • Add contributing, changelog, code of conduct files
  • Add CICD build for build, test, and publish

Overview of verification done

Executed build against the issues/95 branch multiple times: https://github.com/MAAP-Project/maap-py/actions/workflows/build-pipeline.yml?query=branch%3Aissues%2F95

Was able to test and verify

  • CI build can manage version bumps
  • Build can checkout code and commit version updates back to project as the MAAP-CICD app
  • Project can be built and packaged as wheel
  • Project is linted during build but results are currently ignored. Should be resolved by Fix linting errors #99
  • Project tests are executed automatically but the tests currently fail. Test results are currently ignored by the build. Should be resolved by Fix failing tests #100
  • Sonar scan has been integrated https://sonarcloud.io/project/overview?id=MAAP-Project_maap-py
    • Scan quality gate is currently failing for code coverage. Current code coverage with the tests that do work is about 60%. Sonar default ruleset has a minimum 80% coverage requirement. I'd suggest fixing the failing tests in Fix failing tests #100 to address this quality gate rather than change the default ruleset.

Was not able to test yet:

  • Once the project is packaged it will be published to pypi.
  • New github release will be created as part of publishing process

Overview of integration done

Tested within this issue branch.

PR checklist:

  • Linted (currently failing though)
  • Updated unit tests (currently has failing tests)
  • Updated changelog
  • Integration testing
  • Updated documentation

See Pull Request Review Checklist for pointers on reviewing this pull request

@frankinspace frankinspace requested a review from sujen1412 August 1, 2024 00:30
@frankinspace frankinspace changed the base branch from master to develop August 1, 2024 00:30
@frankinspace frankinspace requested review from a team and removed request for sujen1412 August 1, 2024 20:44
sujen1412
sujen1412 previously approved these changes Aug 2, 2024
@sujen1412
Copy link
Collaborator

Minor changes to consider, other than that looks good.

@frankinspace frankinspace linked an issue Aug 5, 2024 that may be closed by this pull request
@frankinspace frankinspace merged commit 324e51d into develop Aug 7, 2024
2 of 3 checks passed
@frankinspace frankinspace deleted the issues/95 branch August 7, 2024 00:58
frankinspace added a commit that referenced this pull request Aug 7, 2024
* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Fetch full repo in checkout for sonar analysis

* tweak pr template wording
frankinspace added a commit that referenced this pull request Aug 28, 2024
* Issues/95: Add CICD pipeline (#101)

* Prep release 4.0.1

* /version 4.0.1rc1

* Add "v" prefix to tags

* /version 4.0.1rc2

---------

Co-authored-by: frankinspace <[email protected]>
marjo-luc added a commit that referenced this pull request Sep 12, 2024
* Remove the need to track maap.cfg file (#93)

* Remove the need to track maap.cfg

* Fix merge issues

* Allow overriding of MAAP_API_HOST

* Split config url construction into functions

* Add test for config reader

* Add script to perform functional test of maap-py

* Construct api root url from provided maap host

* Apply suggestions from code review

Co-authored-by: Chuck Daniels <[email protected]>

* Apply suggestions from code review to update url handling

Co-authored-by: Chuck Daniels <[email protected]>

* Remove unused code and memoize get config function

* Update request utils to drop class and use methods

* Use new request utils and pass maap config object

* Update imports and url handling

* Simplify boolean self-signed for request utils

* Remove usage of os.path.join for constructing urls

* Fix variable name in exception message

* Remove incorrect import

* Update functional tests

---------

Co-authored-by: Chuck Daniels <[email protected]>

* added pagination to listJobs endpoint

* change request

* Issues/95: Add CICD pipeline (#101)

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Setup CICD

* Fetch full repo in checkout for sonar analysis

* tweak pr template wording

* /version 4.0.1a0

* /version 4.1.0a1

* added more query params (#98)

* added more query params

* added get_job_details flag

* cleanup

* Update maap/maap.py

Co-authored-by: Chuck Daniels <[email protected]>

* Update maap/maap.py

Co-authored-by: Chuck Daniels <[email protected]>

* Update maap/maap.py

Co-authored-by: Chuck Daniels <[email protected]>

* added docstring | updated param handling

* review updates

* review updates

* renamed file

---------

Co-authored-by: Chuck Daniels <[email protected]>

* /version 4.1.0a2

* secret management (#104)

* wip

* cleanup

* updated get_secret endpoint to return value

* added tests for secrets management

* updated error handling | added logging

* review comments

* /version 4.1.0a3

* /version 4.2.0a0

* added changelog entry

* /version 4.1.0rc1

---------

Co-authored-by: Sujen Shah <[email protected]>
Co-authored-by: Chuck Daniels <[email protected]>
Co-authored-by: Frank Greguska <[email protected]>
Co-authored-by: frankinspace <[email protected]>
Co-authored-by: marjo-luc <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add CICD workflow
2 participants