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

add script to create source tarballs for EasyBuild releases #612

Merged
merged 15 commits into from
May 8, 2020

Conversation

boegel
Copy link
Member

@boegel boegel commented Apr 13, 2020

This script was mainly created to make it easier to correctly create the source distribution for easybuild-easyconfigs, including the index file created with "eb --create-index" (see easybuilders/easybuild-framework#3210 + #611), but it's also useful for the other easybuild* repositories.

Example usage:

  • framework:
$ cd ~/work/easybuild-framework
$ ~/work/easybuild/scripts/create_source_tarball.sh easybuild-framework 4.1.2.dev0
>> (start: Mon Apr 13 18:03:27 CEST 2020)
>> creating source tarball for easybuild-framework 4.1.2.dev0...
>> current working directory: /Users/kehoste/work/WIP/easybuild-framework ... OK
>> making sure dist/easybuild-framework-4.1.2.dev0.tar.gz doesn't exist yet ... OK
>> checking for clean working directory... OK
>> running 'python setup.py sdist'... OK
>> output of 'python setup.py sdist' in /tmp/tmp.BlakyTNJ/sdist.out
>> checking for dist/easybuild-framework-4.1.2.dev0.tar.gz ... OK
>> checking for unpacked source tarball at /tmp/tmp.BlakyTNJ/easybuild-framework-4.1.2.dev0 ... OK

SUCCESS!
Source tarball for easybuild-framework 4.1.2.dev0 is ready for publishing with:
    twine upload dist/easybuild-framework-4.1.2.dev0.tar.gz

>> (end: Mon Apr 13 18:03:30 CEST 2020)
  • easyconfigs:
$ cd ~/work/easybuild-easyconfigs
$ ~/work/easybuild/scripts/create_source_tarball.sh easybuild-easyconfigs 4.1.2.dev0
>> (start: Mon Apr 13 17:30:15 CEST 2020)
>> creating source tarball for easybuild-easyconfigs 4.1.2.dev0...
>> checking whether 'eb' command is available ... OK
>> checking whether 'eb --create-index' is supported ... OK
>> current working directory: /Users/kehoste/work/WIP/easybuild-easyconfigs ... OK
>> making sure dist/easybuild-easyconfigs-4.1.2.dev0.tar.gz doesn't exist yet ... OK
>> checking for clean working directory... OK
>> creating index file with 'eb --create-index easybuild/easyconfigs --force'... OK
>> checking for easybuild/easyconfigs/.eb-path-index ... OK
>> running 'python setup.py sdist'... OK
>> output of 'python setup.py sdist' in /tmp/tmp.ZbKBqde9/sdist.out
>> checking for dist/easybuild-easyconfigs-4.1.2.dev0.tar.gz ... OK
>> checking for unpacked source tarball at /tmp/tmp.ZbKBqde9/easybuild-easyconfigs-4.1.2.dev0 ... OK
>> checking for /tmp/tmp.ZbKBqde9/easybuild-easyconfigs-4.1.2.dev0/easybuild/easyconfigs/.eb-path-index ... OK
>> checking whether all files are included in index ... 14437/14436 OK
>> checking whether all files in index actually exist in unpacked source tarball ... 14437/14436 OK
>> checking for CVS easyconfigs in source tarball... OK

SUCCESS!
Source tarball for easybuild-easyconfigs 4.1.2.dev0 is ready for publishing with:
    twine upload dist/easybuild-easyconfigs-4.1.2.dev0.tar.gz

>> (end: Mon Apr 13 17:34:21 CEST 2020)

@boegel boegel added this to the 4.x milestone Apr 13, 2020
@boegel boegel requested a review from migueldiascosta April 13, 2020 16:13
@boegel boegel force-pushed the create_source_tarball branch from fee97b3 to 8f6db62 Compare April 14, 2020 07:23
@boegel boegel force-pushed the create_source_tarball branch from 8f6db62 to 45de91c Compare April 14, 2020 07:24
@boegel boegel force-pushed the create_source_tarball branch 5 times, most recently from 5645989 to 0ed2c83 Compare April 17, 2020 12:56
…lso install modules tool when testing scripts
@boegel boegel force-pushed the create_source_tarball branch 3 times, most recently from c9ff75d to a1d3566 Compare April 17, 2020 15:40
@boegel boegel force-pushed the create_source_tarball branch from a1d3566 to e10aa82 Compare April 17, 2020 17:38
@boegel boegel removed this from the 4.x milestone Apr 17, 2020
@boegel boegel added this to the next release (4.2.1?) milestone Apr 17, 2020
@boegel
Copy link
Member Author

boegel commented Apr 17, 2020

@migueldiascosta It took a bit of effort to make the tests happy, but I think this is good to go now...

I've enhanced the create_source_tarball.sh script a bit after you used it for the EasyBuild v4.2.0 release, so it spits out warnings in case the version for the easybuild package are misaligned with the easybuild-* packages it specifies in requires in setup.py.

For both EasyBuild v4.1.2 (due to the 4.1.1 version for easyblocks/easyconfigs) and EasyBuild v4.2.0 (due to 4.2.0.post0 vs 4.2.0) the script produces clear warnings that the versioning looked a bit off, but it would still build the source distribution.

You should be able to run it on current master to get an idea of how that looks...

@migueldiascosta
Copy link
Member

yes, works as advertised :)

@boegel
Copy link
Member Author

boegel commented Apr 18, 2020

@migueldiascosta So, good to merge then?

Copy link
Member

@migueldiascosta migueldiascosta left a comment

Choose a reason for hiding this comment

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

lgtm

@migueldiascosta
Copy link
Member

Going in, thanks @boegel!

@migueldiascosta migueldiascosta merged commit c1b87d1 into easybuilders:develop May 8, 2020
@boegel boegel deleted the create_source_tarball branch May 17, 2020 10:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants