[CentOS-devel] Curating containers

Tue Feb 16 13:24:29 UTC 2016
Karanbir Singh <mail-lists at karan.org>

On 16/02/16 13:15, Bamacharan Kundu wrote:
> Hi Vašek,
>     Yes, I have created pipeline with a nodejs based
> application(https://github.com/bamachrn/cccp-demo-test)
> with openshift build system. Openshift template is taking the git repo
> URI as input, and building, testing within the containers. 
> As a output this is pushing the ready to run containers to the registry.
> 
> Went through the atomic reactor for reading index.yaml and cccp.yaml
> written by rtnpro, kbsingh.
> 
> I am currently working to understand the openshift template and build
> config to automate the build
> on git push or scheduled time.
> 
> Today I am trying to trigger with Github webhook. This is not triggering
> the build due to my IP being in private network.
> also waiting for the ci.centos.org <http://ci.centos.org> access to use
> jenkins in build process.
> 
> Please suggest if there is another way to achieve this.


Looks like we need to setup a syncup point

> 
> Thanks
> Bamacharan
> 
> On Tue, Feb 16, 2016 at 6:29 PM, Vaclav Pavlin <vpavlin at redhat.com
> <mailto:vpavlin at redhat.com>> wrote:
> 
>     Hey, any progress here? 
> 
>     Vašek
> 
>     On Wed, Feb 10, 2016 at 4:19 PM, Vaclav Pavlin <vpavlin at redhat.com
>     <mailto:vpavlin at redhat.com>> wrote:
> 
> 
> 
>         On Wed, Feb 10, 2016 at 3:33 PM, Bamacharan Kundu
>         <bamachrn at gmail.com <mailto:bamachrn at gmail.com>> wrote:
> 
>             Hi Vaclav,
> 
>             On Wed, Feb 10, 2016 at 6:53 PM, Vaclav Pavlin
>             <vpavlin at redhat.com <mailto:vpavlin at redhat.com>> wrote:
> 
>                 Hi Bamacharan,
> 
>                 I'd be careful with per commit builds in case of build
>                 from Dockerfile as it takes time and resources
>                 (presumably a lot of both) because we have to build in
>                 clean env and with --no-cache.
> 
> 
>             Why don't we take a layered based aproach, we can take the
>             base image from local system then build it, this will save
>             lot of time? I saw multiple dockerfiles for
>             build,test,delivery which are intern the same image only.
> 
> 
>         To un-confuse people who didn't see our IRC convo - the
>         Dockerfiles in cccp-demo-openshift repo represent containers
>         which implement individual steps of the workflow - not the
>         images/containers which are tested and delivered.
> 
>         To answer  "Why don't we take a layered based aproach": We do,
>         building from Dockerfile follows the layered approach. The
>         problem I am trying to emphasize is that we need clean
>         environment for every build, otherwise we could introduce
>         inconsistency again..But I think this could be easily solved by
>         using Atomic Reactor instead of my custom hacky script:-)
> 
> 
>         Cheers,
>         Vašek
> 
>                  
> 
> 
>                 I am not sure what you mean by " built image would be
>                 deployed to openshift instance".
> 
>              
>              I was saying about building the docker container images in
>             openshift for the build, test, delivery environments.
>              
> 
> 
>                 My idea would be to go with the yaml files I saw in
>                 cccp-index and rtnpro's example repo as an UI right now
>                 - keep the code as little as possible. Hook it up to my
>                 example with some scripting, setup OpenShift and
>                 registry and try to get whole workflow working.
> 
>              
>             Yes, I was going through the same. I tried with building the
>             example you have put. I am going through the cccp-index and
>             yaml file to add with the example you have put. 
> 
>                  
> 
>                  
> 
>                 I as a developer want to add a yaml file to my repo and
>                 submit my repo url somewhere, so that it gets rebuilt,
>                 tested and pushed to a given registry regularly (like 4
>                 times a day for start). I also want to be notified about
>                 new build and test results.
> 
>              
>             Yes, this yaml will help to handle all the linking and
>             container management stuff.
> 
>                  
> 
>                 Done:-) We can polish it later.
> 
>                 Makes sense?
> 
>             Sure, going ahead with this.
> 
>             Regards
>             Bamacharan
> 
> 
>                 On Wed, Feb 10, 2016 at 12:47 PM, Bamacharan Kundu
>                 <bamachrn at gmail.com <mailto:bamachrn at gmail.com>> wrote:
> 
> 
> 
>                     On Wed, Feb 10, 2016 at 4:30 PM, Karanbir Singh
>                     <kbsingh at centos.org <mailto:kbsingh at centos.org>> wrote:
> 
>                         -----BEGIN PGP SIGNED MESSAGE-----
>                         Hash: SHA1
> 
>                         On 10/02/16 07:29, Bamacharan Kundu wrote:
>                         > Hi,
>                         >
>                         > Vaclav presented the build pipeline very nicely and this would
>                         > take out lot of tension for building the code, checking the code
>                         > standards and test cases from the developer.
>                         >
>                         > I would like to add few points on this.
>                         >
>                         > On Tue, Feb 9, 2016 at 8:08 PM, Vaclav Pavlin <vpavlin at redhat.com <mailto:vpavlin at redhat.com>
>                         > <mailto:vpavlin at redhat.com <mailto:vpavlin at redhat.com>>>
>                         wrote:
>                         >
>                         >
>                         > Hi all,
>                         >
>                         > As KB wrote, I brought up the idea of using OpenShift as a glue
>                         > (i.e. workflow controller). The result can be found here:
>                         >
>                         > https://github.com/vpavlin/cccp-demo-openshift
>                         >
>                         > TL;DR:
>                         >
>                         > The repository contains OpenShift Template defining the workflow -
>                         > build,test, delivery and (very poorly) implements the steps through
>                         > Docker images (i.e. Dockerfiles and run scripts).
>                         >
>                         > The developer should do only git push to his VCS and this should
>                         > trigger the build process in the pipeline.
> 
>                         in an onprem story that would map well, but note
>                         that were aiming to
>                         run a hosted service with a distinct UI ( even
>                         if the UI is no UI )
> 
>                      
>                     Yes, now I got it. I had a thought to minimize the
>                     number of Dockerfiles,
>                     so that the user does not get confused of.
> 
> 
>                         >
>                         > In this TDD process all the environments (including the build,
>                         > test, delivery) would be created as a container and once the step
>                         > is over it will destroy the environment. As output this will
>                         > generate a application runtime along with the successfully built
>                         > application code to registry.
>                         >
>                         > As you mentioned this would be tagged with test along with jenkins
>                         > build id, so that developer or QA can trace for which commit this
>                         > is built.
>                         >
>                         > Then for the next stages, successfully built image would be
>                         > deployed to openshift instance to get through the test, delivery
>                         > stages checking, along with the quality gates.
>                         >
>                         > all the stages should be linked to pipeline and should be easily
>                         > re-producible so that any one can check or regenerate the issues
>                         > instantly.
> 
>                         add another dimension there - collection of
>                         related containers, ie.
>                         the entire microservice should be reproduceable.
> 
>                     This means system needs to maintain all the linking
>                     and volume sharing 
>                     of the components.  
> 
>                         >
>                         > It's easily runnable in Vagrant with use of Project Atomic
>                         > Developer Bundle.
>                         >
>                         > If you are interested in more info, I'd suggest to read the readme
>                         > in the repo, I hope it summarizes it clearly.
>                         >
>                         > It's a very minimal demo, but I think it suggests the path, which
>                         > could take us to the Unicorns land, quite well:).
>                         >
>                         > Let me know in case of any questions, suggestions or requests for
>                         > guidance in case anybody decides to take this further.
>                         >
>                         > I would like to take this further, please let me know if my
>                         > thought process is in the same line as yours or any changes,
>                         > suggestions.
> 
>                         we need to work through whats needed to now
>                         integrate with the
>                         cccp-index content, and then map that back to
>                         deliverables. I had
>                         asked Zeeshan to look at registry side for
>                         delivery space, unsure how
>                         far he's gotten with that.
> 
>                      
>                     I believe, I should look for integration with
>                     cccp-index content?
> 
>                     Regards
>                     Bamacharan
> 
>                     -- 
>                     Bamacharan Kundu
>                     IRC Nick- bamachrn
>                     http://bamacharankundu.wordpress.com/
> 
>                     _______________________________________________
>                     CentOS-devel mailing list
>                     CentOS-devel at centos.org <mailto:CentOS-devel at centos.org>
>                     https://lists.centos.org/mailman/listinfo/centos-devel
> 
> 
> 
> 
>                 -- 
>                 Developer Experience Team
>                 Brno, Czech Republic
>                 Phone: +420 739 666 824 <tel:%2B420%20739%20666%20824>
> 
> 
> 
>                 _______________________________________________
>                 CentOS-devel mailing list
>                 CentOS-devel at centos.org <mailto:CentOS-devel at centos.org>
>                 https://lists.centos.org/mailman/listinfo/centos-devel
> 
> 
> 
> 
>             -- 
>             Bamacharan Kundu
>             IRC Nick- bamachrn
>             http://bamacharankundu.wordpress.com/
> 
>             _______________________________________________
>             CentOS-devel mailing list
>             CentOS-devel at centos.org <mailto:CentOS-devel at centos.org>
>             https://lists.centos.org/mailman/listinfo/centos-devel
> 
> 
> 
> 
>         -- 
>         Developer Experience Team
>         Brno, Czech Republic
>         Phone: +420 739 666 824 <tel:%2B420%20739%20666%20824>
> 
> 
> 
> 
> 
>     -- 
>     Developer Experience Team
>     Brno, Czech Republic
>     Phone: +420 739 666 824
> 
> 
> 
>     _______________________________________________
>     CentOS-devel mailing list
>     CentOS-devel at centos.org <mailto:CentOS-devel at centos.org>
>     https://lists.centos.org/mailman/listinfo/centos-devel
> 
> 
> 
> 
> -- 
> Bamacharan Kundu
> IRC Nick- bamachrn
> http://bamacharankundu.wordpress.com/
> 
> 
> _______________________________________________
> CentOS-devel mailing list
> CentOS-devel at centos.org
> https://lists.centos.org/mailman/listinfo/centos-devel
> 


-- 
Karanbir Singh
+44-207-0999389 | http://www.karan.org/ | twitter.com/kbsingh
GnuPG Key : http://www.karan.org/publickey.asc