[opensuse-buildservice] Developement and Production
Hi, I just recently got the build service working in our environment. I had configured it to use a "production" environment. Now that we have started to use it, it became clear that we would need a "development" environment as well. I tried following the same steps for "development" as I did for "production", on the same host, but it doesn't seem to quite work. When I go to development, I see all the production stuff. I am guessing that is because the file paths are the same. So, my question is, is it recommended to have a different server for production and development, or can they reside on the same server? If they can reside on the same server, how do you configure this? Also, when you have an environment for development and production, how do you promote from dev to prod? Would someone just checkout the project from dev, and then check it into prod? or is there some other way to promote it? Thanks, Andrew -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Hi Andrew, what do you want to achieve ? 1) do you want to contribute to obs itself ? 2) or do you want to have "different" versions of a package a) one for production b) one for development for 2) you can have: Project: MySoftPrj which has "stable packages" Then you create e.g. a sub project "MySoftPrj:dev" and all packages MySoftPrj:dev are links or branches to MySoftPrj Kind Regards Chris Andrew Heagle schrieb:
Hi,
I just recently got the build service working in our environment. I had configured it to use a "production" environment.
Now that we have started to use it, it became clear that we would need a "development" environment as well.
I tried following the same steps for "development" as I did for "production", on the same host, but it doesn't seem to quite work. When I go to development, I see all the production stuff. I am guessing that is because the file paths are the same.
So, my question is, is it recommended to have a different server for production and development, or can they reside on the same server? If they can reside on the same server, how do you configure this?
Also, when you have an environment for development and production, how do you promote from dev to prod? Would someone just checkout the project from dev, and then check it into prod? or is there some other way to promote it?
Thanks, Andrew
-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Thursday 08 April 2010 17:28:26 you wrote:
Hi Andrew,
what do you want to achieve ? 1) do you want to contribute to obs itself ?
No, I want to use the build service for our in-house software. I want to get away from having to compile all the software we use on each box all the time, and move towards using RPMs, so, we only have to compile it once!
2) or do you want to have "different" versions of a package a) one for production b) one for development
Yes, scenario 2.
for 2) you can have: Project: MySoftPrj which has "stable packages" Then you create e.g. a sub project "MySoftPrj:dev" and all packages MySoftPrj:dev are links or branches to MySoftPrj
I was thinking that the development OBS instance would have newer versions of the software that development and QA would use (probably staging), and once testing is done, then move the updated spec file and build to the production OBS instance for production to get updated. I just tried out some things with sub-project, and this just might work! thanks. The reason I was asking was because I noticed different environments, (eg, /srv/www/api/config/environments/) and the database.yml file has a production and a development stanza, so I thought the way to go was to have different instances setup. This is what I was having issues with. Anyway, I guess its probably a good idea then to make a sub-project for each stage; dev, QA, staging and production? This is what you meant by branches? Or is there some other way to do all this in OBS? Andrew
Kind Regards Chris
Andrew Heagle schrieb:
Hi,
I just recently got the build service working in our environment. I had configured it to use a "production" environment.
Now that we have started to use it, it became clear that we would need a "development" environment as well.
I tried following the same steps for "development" as I did for "production", on the same host, but it doesn't seem to quite work. When I go to development, I see all the production stuff. I am guessing that is because the file paths are the same.
So, my question is, is it recommended to have a different server for production and development, or can they reside on the same server? If they can reside on the same server, how do you configure this?
Also, when you have an environment for development and production, how do you promote from dev to prod? Would someone just checkout the project from dev, and then check it into prod? or is there some other way to promote it?
Thanks, Andrew
-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 04/08/2010 09:29 PM, Andrew Heagle wrote:
Hi,
I just recently got the build service working in our environment. I had configured it to use a "production" environment.
Now that we have started to use it, it became clear that we would need a "development" environment as well.
I tried following the same steps for "development" as I did for "production", on the same host, but it doesn't seem to quite work. When I go to development, I see all the production stuff. I am guessing that is because the file paths are the same.
So, my question is, is it recommended to have a different server for production and development, or can they reside on the same server? If they can reside on the same server, how do you configure this?
The concept of environments is from rails, see an article here: http://glu.ttono.us/articles/2006/05/22/guide-environments-in-rails-1-1 So you can configure a second api and webclient instance on the same host running on different ports. For the backend you would have to setup a second instance that uses different paths and ports. I would recommend to use a seperate system for your development environment.
Also, when you have an environment for development and production, how do you promote from dev to prod? Would someone just checkout the project from dev, and then check it into prod? or is there some other way to promote it?
Not sure what you want to achieve. Do you want to develop the obs code or to build packages on the development instance and then move them to your production env? Greetings -- Thomas Schmidt (tom [at] opensuse.org) openSUSE Boosters Team "Don't Panic", Douglas Adams (1952 - 11.05.2001) -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Thursday 08 April 2010 20:44:12 Thomas Schmidt wrote:
On 04/08/2010 09:29 PM, Andrew Heagle wrote:
Hi,
I just recently got the build service working in our environment. I had configured it to use a "production" environment.
Now that we have started to use it, it became clear that we would need a "development" environment as well.
I tried following the same steps for "development" as I did for "production", on the same host, but it doesn't seem to quite work. When I go to development, I see all the production stuff. I am guessing that is because the file paths are the same.
So, my question is, is it recommended to have a different server for production and development, or can they reside on the same server? If they can reside on the same server, how do you configure this?
The concept of environments is from rails, see an article here: http://glu.ttono.us/articles/2006/05/22/guide-environments-in-rails-1-1
So you can configure a second api and webclient instance on the same host running on different ports. For the backend you would have to setup a second instance that uses different paths and ports. I would recommend to use a seperate system for your development environment.
Ok, thanks. That is kid of what I figured.
Also, when you have an environment for development and production, how do you promote from dev to prod? Would someone just checkout the project from dev, and then check it into prod? or is there some other way to promote it?
Not sure what you want to achieve. Do you want to develop the obs code or to build packages on the development instance and then move them to your production env?
Yes, sorry. The second one. Build packages in development and then move them to production. So, if I had 2 servers, one for dev and one for prod, to move a package from dev to prod, one would have to checkout/download the project/package from the dev instance and then checkin/upload it to the one in the production instance? Or are there some options in osc where you can do this in one shot? Andrew
Greetings
-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 04/09/2010 02:59 AM, Andrew Heagle wrote:
On Thursday 08 April 2010 20:44:12 Thomas Schmidt wrote:
On 04/08/2010 09:29 PM, Andrew Heagle wrote:
Hi,
I just recently got the build service working in our environment. I had configured it to use a "production" environment.
Now that we have started to use it, it became clear that we would need a "development" environment as well.
I tried following the same steps for "development" as I did for "production", on the same host, but it doesn't seem to quite work. When I go to development, I see all the production stuff. I am guessing that is because the file paths are the same.
So, my question is, is it recommended to have a different server for production and development, or can they reside on the same server? If they can reside on the same server, how do you configure this?
The concept of environments is from rails, see an article here: http://glu.ttono.us/articles/2006/05/22/guide-environments-in-rails-1-1
So you can configure a second api and webclient instance on the same host running on different ports. For the backend you would have to setup a second instance that uses different paths and ports. I would recommend to use a seperate system for your development environment.
Ok, thanks. That is kid of what I figured.
Also, when you have an environment for development and production, how do you promote from dev to prod? Would someone just checkout the project from dev, and then check it into prod? or is there some other way to promote it?
Not sure what you want to achieve. Do you want to develop the obs code or to build packages on the development instance and then move them to your production env?
Yes, sorry. The second one. Build packages in development and then move them to production. So, if I had 2 servers, one for dev and one for prod, to move a package from dev to prod, one would have to checkout/download the project/package from the dev instance and then checkin/upload it to the one in the production instance? Or are there some options in osc where you can do this in one shot?
The easiest way to do this is having different projects in your production system like Christian described. For example we have the openSUSE:Tools:Unstable project where we build snapshot packages from our code in development, and the openSUSE:Tools project where the final releases are build. Greetings -- Thomas Schmidt (tom [at] opensuse.org) openSUSE Boosters Team "Don't Panic", Douglas Adams (1952 - 11.05.2001) -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Thursday 08 April 2010 21:14:50 Thomas Schmidt wrote:
On 04/09/2010 02:59 AM, Andrew Heagle wrote:
Yes, sorry. The second one. Build packages in development and then move them to production. So, if I had 2 servers, one for dev and one for prod, to move a package from dev to prod, one would have to checkout/download the project/package from the dev instance and then checkin/upload it to the one in the production instance? Or are there some options in osc where you can do this in one shot?
The easiest way to do this is having different projects in your production system like Christian described. For example we have the openSUSE:Tools:Unstable project where we build snapshot packages from our code in development, and the openSUSE:Tools project where the final releases are build.
Thanks for your help. I will use it in this way. Andrew -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Hi Andrew, Andrew Heagle schrieb:
On Thursday 08 April 2010 21:14:50 Thomas Schmidt wrote:
Thanks for your help. I will use it in this way.
And think about to setup your instance with "openSUSE.org" prj. This way you can "link in" any project of api.opensuse.org, and you don't need to copy over all the dists (openSUSE_11.1 or openSUSE_11.2 or ...). And you can simply link/branch packages to your instance without having to "copy" them :) have a look at /usr/share/doc/packages/obs.api/README.SETUP here is an example of my project conf ('osc meta -e prj [prj_name]') <project name="MyPrj"> <title>My packages</title> <description>packages needed by ME</description> <person role="maintainer" userid="admin"/> <person role="bugowner" userid="admin"/> <build> <disable repository='openSUSE_11.2'/> </build> <publish> <disable repository='openSUSE_11.2'/> </publish> <debuginfo> <disable/> </debuginfo> <repository name="openSUSE_11.1"> <path project="openSUSE.org:openSUSE:11.1" repository="standard"/> <arch>x86_64</arch> <arch>i586</arch> </repository> <repository name="openSUSE_11.2"> <path project="openSUSE.org:openSUSE:11.2" repository="standard"/> <arch>x86_64</arch> <arch>i586</arch> </repository> <repository name="SLE_10"> <path project="openSUSE.org:SUSE:SLE-10:SP2:SDK" repository="standard"/> <arch>x86_64</arch> <arch>i586</arch> </repository> <repository name="SLE_11"> <path project="openSUSE.org:SUSE:SLE-11" repository="standard"/> <path project="SIT:miss" repository="SLE_11"/> <arch>x86_64</arch> <arch>i586</arch> </repository> </project>
Andrew
Your welcome on any question Chris -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (3)
-
Andrew Heagle
-
Christian
-
Thomas Schmidt