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

documentation for .yeb format #161

Merged
merged 17 commits into from
Oct 21, 2015
Merged

documentation for .yeb format #161

merged 17 commits into from
Oct 21, 2015

Conversation

Caylo
Copy link
Contributor

@Caylo Caylo commented Oct 7, 2015

@rjeschmi
Copy link
Contributor

rjeschmi commented Oct 9, 2015

Did we get the docs for the yeb options anywhere yet?

@boegel
Copy link
Member

boegel commented Oct 9, 2015

What do you mean with yeb options?

@rjeschmi
Copy link
Contributor

rjeschmi commented Oct 9, 2015

Maybe what I'm looking for is pre-release docs. We could put them somewhere else (ie, checkout feature branch, use --experimental etc).

Also, the example in the docs seems to be slightly wrong (easyblock shouldn't be specified, or should be bzip I think, since there is no configure script used for the sources)

@rjeschmi
Copy link
Contributor

rjeschmi commented Oct 9, 2015

Also the escaping in the docs for *SOURCE_TAR_GZ (shows up as \*SOURCE_TAR_GZ).

Is * a preference or something that makes sense to YAML? It is going to be a bit of a pain long term I imagine (for the same reason the docs are hard to escape).

@boegel
Copy link
Member

boegel commented Oct 9, 2015

We currently don't have documentation for pre-release stuff, but we can add instructions here on how to start playing around with this.
We can even provide an easyconfig for to install EasyBuild 2.x.0dev with .yeb support included.

@rjeschmi
Copy link
Contributor

rjeschmi commented Oct 9, 2015

that might be nice. This is a really cool feature. Definitely looking forward to this moving forward.

@boegel
Copy link
Member

boegel commented Oct 9, 2015

And you're right about the easyblock thing, we took a shortcut there to use a bzip2 as a test case, to avoid requiring the EB_bzip2 easyblock. I guess we should be using another one.

@rjeschmi
Copy link
Contributor

rjeschmi commented Oct 9, 2015

Maybe we should create a feature branch of easyconfigs with some interesting examples merged?

@boegel
Copy link
Member

boegel commented Oct 9, 2015

The *SOURCE_TAR_GZ is standard YAML, see http://www.yaml.org/spec/1.2/spec.html#alias//
The definition of the alias with &SOURCE_TAR_GZ is injected by eb right before the .yeb file is parsed.

It's the best we found so far to as equivalent to the SOURCE_TAR_GZ constants we now have, since there's no discrimination between strings and variables in YAML otherwise.

@boegel
Copy link
Member

boegel commented Oct 9, 2015

A feature branch with easyconfigs makes sense to me. Question is how we should organise things there. Do we simply mix .eb and .yeb files in the same <software> directory?

@rjeschmi
Copy link
Contributor

rjeschmi commented Oct 9, 2015

Yes, I think so about mixing. Though I think we expect to have only one .yeb per software (though we may allow inheritance of some sort)

easyblock: ConfigureMake

name: gzip
version: '1.6' # FIXME bug: quotes are required here to make sure this is parsed a a string, not a floating point value
Copy link
Member

Choose a reason for hiding this comment

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

@Caylo: please look into this, make very sure somehow that version is string after parsing...

It's probably time we define the expected type for each of the easyconfig parameters...

Also, please include this gzip.yeb in the test easyconfigs, and include it in the tests for .yeb.

vars:
- &f foo
- &b bar
!join [f, bar] # returns 'foobar'
Copy link
Member

Choose a reason for hiding this comment

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

this works with f, no *f required?

@Caylo Caylo force-pushed the yeb-docs branch 2 times, most recently from a76b54a to 1b2c95b Compare October 21, 2015 14:00
@Caylo Caylo force-pushed the yeb-docs branch 2 times, most recently from dcfaa21 to 8559ad9 Compare October 21, 2015 14:51
@rjeschmi
Copy link
Contributor

Add this feature to the list of experimental features in:

:ref:`experimental_features

Useful links:

* YAML syntax specification: http://www.yaml.org/spec/1.2/spec.html

Copy link
Contributor

Choose a reason for hiding this comment

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

Is PyYAML a 1.2 parser? They advertise as 1.1 (though I imagine there are some extensions)

Copy link
Member

Choose a reason for hiding this comment

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

Hmm, good point.

Although, PyYAML is not complaining when we're using %YAML 1.2 as a header.

@rjeschmi
Copy link
Contributor

Merge it as is, things look fine and generally good. We'll work with it and update as we learn more.

@boegel
Copy link
Member

boegel commented Oct 21, 2015

@rjeschmi: makes sense, let's do that indeed, thanks for the review!

boegel added a commit that referenced this pull request Oct 21, 2015
documentation for .yeb format
@boegel boegel merged commit 240ab9a into easybuilders:develop Oct 21, 2015
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.

3 participants