#solum

/

      • ashishjain
        --name solum_app /opt/jenkins_solum_poc/exported_image/python_app_deploy.tar
      • devkulkarni
        the cli uses rest calls in the background
      • ashishjain
        we can probably wrap it in a shell script
      • indeed
      • but since we are running all the stuff in one VM
      • devkulkarni
        so I think it is alright for us to use the glance cli directly
      • ashishjain
        we are able to make it work
      • devkulkarni
        what do you mean?
      • ashishjain
        but what about the case if openstack is on another host
      • devkulkarni
        oh ok
      • in that case also using the cli would work
      • ashishjain
        yeah correct
      • sorry
      • devkulkarni
        because we are setting all those variables
      • env variables
      • yep
      • ashishjain
        yeah correct
      • devkulkarni
        ok, so we agree on using the cli
      • one more point related to cli is that
      • ashishjain
        okay
      • EricGonc_ joined the channel
      • but do we wrap all this in a shell script?
      • devkulkarni
        we are anyway going to use the solum cli also
      • ashishjain
        okay that makes life easier
      • devkulkarni
        about wrapping it into a shell script — what value would it provide?
      • ashishjain
        what if this changes everytime
      • --name solum_app /opt/jenkins_solum_poc/exported_image/python_app_deploy.tar
      • devkulkarni
        I agree about your assessment that we will have to parameterize
      • yeah
      • ashishjain
        yes
      • EricGonczer_ has quit
      • devkulkarni
        would we pass the parameters to the script from the XML config?
      • something like: du-upload-script.sh <app-name> <tar-location>
      • ashishjain
        we can probably or else parameters from one job can be passed to the next one
      • as well
      • devkulkarni
        where <app-name> and <tar-location> are passed in as job parameters?
      • right
      • ashishjain
        yeah that could be one thing
      • or else parameters from previous job can be passed to the next one
      • so we will have to parameterize it I guess
      • devkulkarni
        see, if the parameters are going to be passed into this job, then we could probably use the parameters directly in the current code that you have
      • yes, we definitely need to parameterize this job
      • what I am not so clear is if we need to define a wrapper script
      • I feel that what you have currently is fine
      • ashishjain
        okay
      • devkulkarni
        all we have to do is change the glance image-create command
      • glance image-create --visibility=public --container-format=docker --disk-format=raw --name <app-name> <tar-location>
      • ashishjain
        here app-name and tar-location can be passed from previous job is what you meant?
      • devkulkarni
        and use the parameters that are sent in corresponding to app-name and tar-location
      • yeah
      • ashishjain
        make sense
      • I think that should be fine
      • devkulkarni
        I think so too
      • ashishjain
        Alright I will try that out and let you know how it goes
      • Post this the next challenge would be to get the du_id from glance
      • I think we will have to probably use app-name for that
      • and than pass the du-id to our next job which will be solum_deploy
      • devkulkarni
        yep
      • those would be the next steps
      • that will be job 4 in the new setup
      • as we just said we will combine current job 3 and job 4
      • ashishjain
        correct
      • and than job 5 will be app deploy via solum
      • so I guess we will have 5 jobs
      • devkulkarni
        job 4 you mean, right?
      • job 4 will deploy via solum
      • ashishjain
        job 4 will be get du_id
      • devkulkarni
        oh
      • actually getting the du_id can be done in the current job itselt
      • ashishjain
        5 will be solum create_and_deploy
      • devkulkarni
        itself
      • ashishjain
        okay
      • you mean club 3,4 and 5 into one
      • devkulkarni
        getting the du_id is going to be another one-liner glance command
      • ashishjain
        yeah
      • devkulkarni
        no, I meant we combine current job 3 and 4 and add the line to get the du_id at the end of this new job
      • so that will be our new job 3
      • ashishjain
        okay
      • devkulkarni
        then, the new job 4 will call solum
      • ashishjain
        okay that should be fine
      • devkulkarni
        cool
      • ashishjain
        so we will have 4 jobs
      • create docker images
      • devkulkarni
        yep
      • ashishjain
        run test
      • upload image
      • deploy
      • devkulkarni
        +1
      • ashishjain
        may be one more to upload the logs
      • :)
      • devkulkarni
        yeah
      • :)
      • ashishjain
        so in all max 5
      • devkulkarni
        yeah.. max 5 jobs
      • ashishjain
        yeah
      • and about setting all these parameters
      • like OS_USER_NAME, docker registry url etc etc
      • we can use our glue code
      • devkulkarni
        makes sense
      • ashishjain
        this will give use a configurable pipeline
      • cool
      • devkulkarni
        yep
      • lets summarize what all things need to be done
      • ashishjain
        yep
      • devkulkarni
        1) glue code
      • 2) figuring out what parameters are needed in each job
      • 3) figuring out how to pass parameters from one job to another
      • 4) figuring out how to redirect console logs to a file
      • 5) figuring out if we can POST the logs back to the app repository in gitlabs
      • ashishjain
        yep
      • devkulkarni
        6) in solum, create and deploy app
      • ashishjain
        shall we add this to our etherpad
      • yeah missed that one
      • devkulkarni
        yes, lets add this to etherpad
      • ashishjain
        so this will be a new feature in solum?
      • will add these
      • devkulkarni
        actually we may not need a new feature
      • ashishjain
        btw how do we store all the parameters
      • in a flat file?
      • devkulkarni
        we can use the current 'app create' and 'app deploy'
      • just that in the 'app create' we need to create a dummy app
      • ashishjain
        but than we need a language pack also
      • devkulkarni
        which is what we were thinking that the 'app create_and_deploy' will do behind the scene
      • ashishjain
        otherwise app create fails
      • devkulkarni
        good point
      • ok, in that case we have to figure out how to register an app without a lp
      • I think you had raised a bug for this before
      • ashishjain
        yeah
      • devkulkarni
        cool, lets add all this to the etherpad
      • ashishjain
        added
      • but not the app create part
      • btw this is one way to integrate solum and jenkins
      • where jenkins is being the driver
      • devkulkarni
        right
      • ashishjain
        we will have to see how solum could drive this complete stuff
      • devkulkarni
        the other option is where solum is the driver
      • ashishjain
        yeah
      • devkulkarni
        I am thinking we should not worry about that at this stage
      • ashishjain
        yeah
      • so what do we do about solum app create and deploy
      • devkulkarni
        as a theoretical possibility that is an option
      • ashishjain
        yeah
      • devkulkarni
        I guess we will have to add that option
      • ashishjain
        okay
      • devkulkarni
        I will take a look at what is involved in that
      • ashishjain
        alright cool
      • devkulkarni
        yep
      • let me quickly look at the etherpad
      • ashishjain: also, if you can add the paste links to the etherpad that will be helpful
      • all the links that you shared aboev