Skip to content
This repository has been archived by the owner on Nov 8, 2019. It is now read-only.

most of the dockerfiles use Fedora 20 as base image #74

Closed
adimania opened this issue Jan 20, 2015 · 6 comments
Closed

most of the dockerfiles use Fedora 20 as base image #74

adimania opened this issue Jan 20, 2015 · 6 comments

Comments

@adimania
Copy link
Contributor

Fedora 21 is released and we should move to Fedora 21 as base image instead of Fedora 20. However there is a chance that some dockerfiles may break. Is there some sort of CI to test once the dockerfiles are changed or do we do it manually? In absence of a CI, may be we can try to have one at travis or circleCI.

Also see rhbz #1183973

@scollier
Copy link
Member

Hi @adimania This is definitely something we need to address. Right now it's all manual. We brought this up during the past couple of Fedora Cloud SIG meetings.

http://meetbot.fedoraproject.org/fedora-meeting-1/2015-01-07/fedora_cloud_sig.2015-01-07-19.01.log.html

Fedora does have a Jenkins instance here:

https://fedoraproject.org/wiki/Jenkins@infra

I haven't looked into it to much, but I need to. Some things to consider / think about for this new process -

  1. What do we expect from this automation?
    build, run, give expected results
  2. What are some things that might trigger a build?
    docker update, fedora update, app update, script updates, new app is added to repo
  3. How to rebuild a single app?
    maybe with release branches. I need to look into this as well. We don't want to rebuild every image in the repo because someone changes a README file.

We do meet every Wed @ 19:00:00 to 20:00:00 UTC

So, we probably need to create a ticket here and start working it:

https://fedorahosted.org/cloud/

@adimania
Copy link
Contributor Author

I would start working towards it in a few days. I need to look into jenkins a bit more before I do anything concrete with the Fedora's Jenkins setup.

@LalatenduMohanty
Copy link
Member

@scollier @adimania I have some experience in Jenkins. Let me know if I can help.

@adimania
Copy link
Contributor Author

Let us start with a basic build test. This test will just make sure that all the dockerfiles in a branch can be build successfully. We can use Jenkins git plugin instead of git clone in the code below.

set -e
# Command below will help in saving disk but increases bandwidth usage and time of the test
# docker images -q | xargs docker rmi 
git clone https://github.com/fedora-cloud/Fedora-Dockerfiles
cd Fedora-Dockerfiles
git checkout $test_branch
for stack in `ls`
do 
  cd $stack 
  docker build --rm -t fed-jenkins/$stack .
done

If this looks good to you guys, I would try to make it work in a local machine here and then eventually move it to Fedora's Jenkins setup.
Going forward, I would like to have a test.sh in every stack which can be executed by Jenkins to validate the stack. Does this sounds good?

@adimania
Copy link
Contributor Author

adimania commented Feb 9, 2015

I tried running the script above with some minor modifications but everything seems to be failing with error:
filesystem-3.2-27.fc21.x86_64 was supposed to be removed but is not!
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1171928

@scollier
Copy link
Member

This has been fixed by @adelton in PR #174. Having said that, all the Dockerfiles still need to be tested. Most of the ones I tested worked, but I didn't test every one of them.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants