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 CI #2

Closed
3 tasks done
matthewfeickert opened this issue May 7, 2018 · 12 comments
Closed
3 tasks done

Add CI #2

matthewfeickert opened this issue May 7, 2018 · 12 comments
Assignees
Labels
enhancement New feature or request

Comments

@matthewfeickert
Copy link
Member

matthewfeickert commented May 7, 2018

  • Create a CircleCI account for the IML (@omazapa can you do this as you have general admin privileges?)
  • Setup web area to push to after build
  • Write config.yml using LaTeX-Docker (Example)

The idea is to setup a CI system to make sure that everything is still building as expected (c.f. here for an example of this in action)

@matthewfeickert matthewfeickert self-assigned this May 7, 2018
@omazapa
Copy link
Member

omazapa commented May 12, 2018

Hi @matthewfeickert

the account in circleci https://circleci.com/setup-project/gh/iml-wg/cwp

@matthewfeickert
Copy link
Member Author

Thanks @omazapa, that's great news.

@SergeiML, is there an IML controlled web area on CERN's servers that we can have the CI deploy to?

@matthewfeickert matthewfeickert mentioned this issue May 13, 2018
@matthewfeickert matthewfeickert added the enhancement New feature or request label May 13, 2018
@matthewfeickert
Copy link
Member Author

@omazapa @SergeiML As soon as we can get a web area on a server that will be publicly accessible from the web then we should have everything fully setup for doing the revisions to finish the CWP. Do you have suggestions on who how we can get that web area setup?

@omazapa
Copy link
Member

omazapa commented May 14, 2018

Hi @matthewfeickert en travisci you dont need a server for the ci deploy, they can provide a free virtual machine with docker for that.

@matthewfeickert
Copy link
Member Author

matthewfeickert commented May 14, 2018

@omazapa Maybe I don't understand what you mean, but I am just saying that it would be nice to setup a web accessible location to deploy the version of the CWP that the CI builds to. As an example of what I mean, I am hosting the built pdfs of my department's Ph.D. template on my personal webspace and the CI deploys it to there.

The reason that I'm suggesting CircleCI instead of Travis is that with Circle you can choose to use a Docker image other then one they supply, while using non-Travis images is a huge pain (I've only ever figured out how to deal with this by pulling the image I want to use into Travis and then running docker exec commands in the Travis CI). As I already have a Docker image with TeX Live 2017 installed in it, it seems a lot easier to just use that then to have Travis install LaTeX on their Trusty image every build.

@omazapa
Copy link
Member

omazapa commented May 14, 2018

@matthewfeickert ahhh ok,
we can put the pdf on http://iml.web.cern.ch or http://oproject.org what do you think @SergeiML?

@omazapa
Copy link
Member

omazapa commented May 16, 2018

Hi @matthewfeickert
to do an automatic process I will give you access to the oproject repository https://github.com/oprojects/oprojects.github.io
in your CI system is just to clone it and put the the new pdf with the name ml-cwp.pdf in the folder
https://github.com/oprojects/oprojects.github.io/tree/master/cwp/

commit and push it and automatically github pages will update it in
http://oproject.org/cwp/

Cheers,
Omar.

@matthewfeickert
Copy link
Member Author

matthewfeickert commented May 28, 2018

@omazapa Sorry for the late follow up (have been travelling). This all sounds good. My only question is if you have suggestions on how to properly add authentication keys to do the cloning and pushing. That is, do you have a suggestion of how to add a hashed key into the CI (something along the lines of this, which seems like the better option then having secret variables that are full ssh keys stored in the project settings on GitHub)?

@matthewfeickert
Copy link
Member Author

matthewfeickert commented May 28, 2018

@omazapa Actually, I guess CircleCI has docs for this. Given that you have admin controls for the oprojects.github.io repo can you add a deploy key to it following those instructions, and then just let me know what the fingerprint is (or maybe you can do all of this just through the CircleCI interface? --- not sure)?

@omazapa
Copy link
Member

omazapa commented May 28, 2018

Hi @matthewfeickert
you can to add a new ssh to your account, and I should work for oproject because you have permissions.
but anyway I added you like admin.

@matthewfeickert
Copy link
Member Author

@omazapa Okay this seems to work. However, doing things this way is going to result in a lot of commits to the oprojects.github.io repo, which would essentially pollute the commit history.

I am going to try to see if I can figure out a way when the CI runs on a PR for the CWP if it can then create a PR for the oprojects.github.io repo or add a commit to an existing PR for the oprojects.github.io repo.

@matthewfeickert
Copy link
Member Author

@omazapa @SergeiML To avoid the concerns I had with polluting the OProject Git repo history I've created a CERN internal web area on my EOS space (it used to be all ATLAS internal) that the CI now deploys to:

https://cern.ch/feickert/IML-CWP/

For the time being when we are still doing lots of revisions we can use this area, and then once we've settled down into the final stages we can switch the CI deployment back to OProject's webpage. I've detailed what will need to be done in the future in Issue #6.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants