GatorEducator / execexam

:rocket: ExecExam runs executable examinations that assess Python programming skills
https://pypi.org/project/execexam/
2 stars 3 forks source link

feat: Automatic PyPI Publishing using Tags #17

Closed PCain02 closed 1 month ago

PCain02 commented 1 month ago

1. Make sure the title is descriptive of what the PR includes. Don't mention issue names/numbers; save that for the description.

2. List the names of those who contributed to the project. @PCain02

3. Link the issue the pull request is meant to fix/resolve. Closes https://github.com/GatorEducator/execexam/issues/2

4. Describe the contents and goal of the pull request. This PR adds the ability to publish to PyPI automatically when using tags. publish.yml and test-publish.yml were the main targets of the PR. The lowercase t tag will be used for test publishing and the lowercase v tag is for real publishing. They should look like t0.3.1 and v0.3.1

I also deleted the empty test files and the "Rebekah Test" print statement so it would pass the lining checks and make it so we can merge into the main execexam.

5. What operating systems has this been tested on? How were these tests conducted? Windows 10 but I would like it reviewed on MacOS and Linux before pushing. The tests were conducted by running the following commands (replace the version number with the actual version next in line):

poetry version 0.3.1 git add pyproject.toml git commit -m "Chore: Bump version to 0.3.1" git tag t0.3.1 git push origin t0.3.1

You will know it worked if Test PyPI has updated the version number

Note: we won't be able to use the v tag until this is in the actual execexam and Professor Kapfhammer's secret key has been added.

6. Add all labels that apply. (e.g., documentation, ready-for-review) Infrastructure

7. Will coverge be maintained/increased? This does not affect coverage.

8. Include a code block and/or screenshots displaying the functionality of your feature, if applicable/possible.

PS C:\Users\Palla\Documents\GitHub\execexam> poetry version 0.3.30
Bumping version from 0.3.30 to 0.3.30
PS C:\Users\Palla\Documents\GitHub\execexam> git add .
PS C:\Users\Palla\Documents\GitHub\execexam> git commit -m 'chore: bump version to 0.3.30 test'
PS C:\Users\Palla\Documents\GitHub\execexam> git tag t0.3.30      
PS C:\Users\Palla\Documents\GitHub\execexam> git push origin t0.3.30
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0)
To https://github.com/PCain02/execexam.git
* [new tag]         t0.3.30 -> t0.3.30

9. Other Notes

The publish.yml file could not be tested without having Professor Kapfhammer's secret token for PyPI and without bumping version numbers. Testing the publish.yml should be discussed with Professor Kapfhammer before bumping the versions. The test publish feature can be done without fear because it is only bumping the version on TestPyPI. The test publish feature was previously tested by Linux, MacOS, and Windows users.