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

Git all archive implementation #774

Merged
merged 28 commits into from
Aug 16, 2019
Merged

Git all archive implementation #774

merged 28 commits into from
Aug 16, 2019

Conversation

dnadeau4
Copy link
Collaborator

Summary

add git-all-archive.py to create a tarball with archive source and all submodules source file

Proposed changes

python scripts/git-all-archive.py will archive current repository and create a tarball with the branch name. HELIC-.tar.gz

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@phlptp
Copy link
Member

phlptp commented Aug 13, 2019

The code itself looks good, and as far as I can tell the output looks good.
A couple things we might want to add.
Somewhere in the comments of the python code or a small script add the install requirements and commands
pip install pygithub and the additional requirements. the first time I ran I had a number of errors and had to figure out what I needed. A separate short script that does the install might be good as we will likely run this in a CI job, that will make installing requirements easier.

Second I am wondering if some cleanup might be useful, such that once the zip file is constructed the intermediate files are deleted, maybe as an additional option of some kind.

@phlptp
Copy link
Member

phlptp commented Aug 13, 2019

@nightlark what do you think?

@kdheepak
Copy link
Contributor

kdheepak commented Aug 13, 2019

If you want to not have a Python dependency for this, there's a few command line tools ([1, 2, 3]) with no dependencies that exist for this very purpose: uploading files to a github tags.

[1] https://github.com/tfausak/github-release/releases/tag/1.2.4
[2] https://github.com/aktau/github-release/releases/tag/v0.7.2
[3] https://github.com/kdheepak/github-release/releases/tag/v0.1.4

^ I wrote this one ([3]), and it is used to upload binaries of itself to github releases from Travis. It's a pre-compiled command line tool executable with no dependencies so it should work everywhere. I can also address issues if you want to use that instead :)

Copy link
Member

@nightlark nightlark left a comment

Choose a reason for hiding this comment

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

It would be nice to be able to create an archive without needing to install pygithub to run the script -- maybe the git archive creation and GitHub Release uploading can be done in separate scripts.

scripts/git-all-archive.py Outdated Show resolved Hide resolved
@nightlark
Copy link
Member

If you want to not have a Python dependency for this, there's a few command line tools ([1, 2, 3]) with no dependencies that exist for this very purpose: uploading files to a github tags.
[1] https://github.com/tfausak/github-release/releases/tag/1.2.4
[2] https://github.com/aktau/github-release/releases/tag/v0.7.2
[3] https://github.com/kdheepak/github-release/releases/tag/v0.1.4
^ I wrote this one ([3]), and it is used to upload binaries of itself to github releases from Travis. It's a pre-compiled command line tool executable with no dependencies so it should work everywhere. I can also address issues if you want to use that instead :)

Most of the CI services also seem to provide tasks to deploy to GitHub Releases -- if those have the functionality needed, maybe we can skip installing dependencies/binaries for the deploy step.

https://docs.travis-ci.com/user/deployment/releases/
https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/utility/github-release?view=azure-devops

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@dnadeau4
Copy link
Collaborator Author

I did not have time to test the archive file.

I used a TMPDIR now and I cleaned all the tar file.
I go the docker working on circle ci with OCTAVE
https://circleci.com/gh/GMLC-TDC/HELICS/tree/git-all-archive

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@HELICS-bot
Copy link
Contributor

🎉 helics-ns3 integration test passed: [build log] [commit]

@phlptp phlptp changed the base branch from master to develop August 16, 2019 15:43
@HELICS-bot
Copy link
Contributor

🎉 HELICS-Examples integration test passed: [build log] [commit]

@@ -0,0 +1,19 @@
FROM ubuntu:18.04 as builder
Copy link
Member

Choose a reason for hiding this comment

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

We should probably store these somewhere more organized since I expect we will end up with a few of them them but I am not sure what is best yet so this is fine for now

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.

6 participants