Skip to content

Conversation

@oxr463
Copy link
Contributor

@oxr463 oxr463 commented Jun 24, 2020

Closes: #331

@oxr463
Copy link
Contributor Author

oxr463 commented Jun 24, 2020

See also: https://rtyley.github.io/bfg-repo-cleaner

git clone --mirror https://github.com/cs01/gdbgui.git
bfg --delete-files downloads gdbgui.git

# if: startsWith(github.ref, 'refs/tags/')
# env:
# GHR_PATH: FIXME
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Copy link

Choose a reason for hiding this comment

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

You could also use https://github.com/actions/upload-artifact to attach artifacts to the current github actions run.

@cs01
Copy link
Owner

cs01 commented Jun 24, 2020

There is some documentation that points to those binaries which will need to be updated.

@oxr463
Copy link
Contributor Author

oxr463 commented Jun 25, 2020

Depends on: #335

@cs01
Copy link
Owner

cs01 commented Jul 7, 2020

Thanks, I will try to take a look this weekend

@oxr463
Copy link
Contributor Author

oxr463 commented Jul 8, 2020

Thanks, I will try to take a look this weekend

Cool, once we have the binaries compiled, then we'll be good to go!

Copy link
Owner

@cs01 cs01 left a comment

Choose a reason for hiding this comment

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

I noticed there were some syntax errors and lint errors preventing basically anything from working, including building the executables. I fixed the, so this PR should be rebased on the latest master commit.

I verified the ubuntu build still works, but the Windows build failed. I didn't re-test on a mac since I'm on unix right now. The windows build might do better outside of docker in github actions, with a runs-on of windows-2019. I'll be happy to delete that windows Dockerfile since it contains a lot of black magic, so hopefully it works. If not, it will have to be fixed up to account for whatever changed in the the apt repos, etc.

How do we confirm the GitHub actions are working? I want to be sure they work and inspect the published files before deleting them from the gdbgui github repo. I went to the actions tab but didn't see anything.

runs-on: macOS-latest
strategy:
matrix:
python-version: [3.5, 3.6, 3.7, 3.8]
Copy link
Owner

Choose a reason for hiding this comment

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

why is this being built with so many versions?

@cs01
Copy link
Owner

cs01 commented Jul 13, 2020

I made a new branch based off this and got everything working except for associating the artifacts with the release itself: https://github.com/cs01/gdbgui/tree/cs01/test-actions. I recommend resetting this PR to that branch.

Re associated artifacts with github releases: I can look up how to do it, but if you have any tips or can reset this PR to the cs01/test-actions branch, and make changes on top of that, that would be preferred. https://github.com/cs01/gdbgui/actions/runs/166916337 shows all the OS's have the executables built and artifacts stored. I don't think it's necessary to store artifacts for all pushes, only for actual github releases.

@cs01
Copy link
Owner

cs01 commented Jul 13, 2020

I will probably end up migrating all the Travis tests to GitHub actions. The actions will build the executable as well, and at the end the executable will be published.

@cs01 cs01 changed the title WIP: Release binaries build binaries with github actions Jul 13, 2020
@cs01
Copy link
Owner

cs01 commented Jul 13, 2020

Since this PR allowed edits from maintainers I went ahead and pushed to it. Thanks for kicking off this PR and motivating me to look into GitHub actions.

I'm going to land now with the following:

  • Executables built on all pushes/pull requests for all OS's
  • Artifacts are stored if on the master branch

Some other changes made along with this:

  • Smoke test that executable works after building it
  • Add md5 checksum file of executable
  • nox sessions for each OS with verification that the expected OS is being used

Future work:

  • [DONE] Delete executables from source code. I am going to wait for a successful release with artifacts attached to a release in GitHub before doing this.
  • Potentially automatically associate a build with a release. For now I'll just download the artifacts, then drag & drop them manually to associate with a release.

@cs01 cs01 merged commit 895ba32 into cs01:master Jul 13, 2020
@oxr463 oxr463 deleted the release-binaries branch July 13, 2020 18:08
cs01 added a commit that referenced this pull request Jul 14, 2020
Bug: #331

* Create release.yml
* Update contributing.md
* make build verification more strict
* change name and set nox session to non-interactive

Co-authored-by: Chad Smith <cs01@users.noreply.github.com>
cs01 added a commit that referenced this pull request Jul 14, 2020
Bug: #331

* Create release.yml
* Update contributing.md
* make build verification more strict
* change name and set nox session to non-interactive

Co-authored-by: Chad Smith <cs01@users.noreply.github.com>
cs01 added a commit that referenced this pull request Jul 18, 2020
Bug: #331

* Create release.yml
* Update contributing.md
* make build verification more strict
* change name and set nox session to non-interactive

Co-authored-by: Chad Smith <cs01@users.noreply.github.com>
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.

Storing binaries in the repository

3 participants