I'm trying to setup a windows environment within AWS Opsworks.
I have a setup recipe that will install GIT and Ruby.
And a deploy recipe that will try to use git and rake.
Setup works successfully. However, deploy will complain that git/rake are missing.
If I reboot the instance, I can issue a deploy and git/rake will be found.
The symptoms I am experiencing are as follows:
Start brand new instance
Setup will properly install applications
Deploy will fail
Stop and Start instance
Setup and deploy will finally succeed.
Based on my searches online, seems windows requires a reboot after changing environment variables. Git and Ruby are added to the PATH after installation but it seems my scripts cannot locate these applications until a reboot. I'm using opsworks_scm_checkout and powershell and both will not work.
I tried modifying my setup recipe to reboot during the startup phase, which works perfectly but my deploy application doesn't follow after the reboot.
Start brand new instance
Setup will properly install applications
Reboot
Deploy never fires, have to manually trigger this in the App Deploy
Is there a proper workaround for this? Anyone have real life experience on how to resolve this?
Related
I'm setting up a build on Teamcity that will build a XCode project, then create a release in Octopus and using Powershell copy the files into a server. However, I'm having an issue, while both steps (Teamcity and Octopus) work independently, currently Teamcity is telling me that my build agent does not complies with the requirement 'OctopusDeploy: Release'.
I've downloaded the plugin that is here, and have managed to put the zip file on the runner directory, and while Octopus restarted and seems to have installed it, it still doesn't show as one of the available Build runners.
Apparently you can't do this, or that's what it seems like. Installing the plugin on a fresh install of Teamcity ignored the Mac build agent, which means it's not compatible.
This makes sense because Octopus uses an exe wrapper so this could be the reason. If anybody finds something else, feel free to contribute.
I am running TeamCity 7.1.3 (yeah, I know it's an oldie). I have a Mac OS X Yosemite build agent.
I started the agent in the recommended way, sh bin/agent.sh start.
My build configuration contains one command line build step, but it can't run, because I get the following message on my agent:
Incompatible runner: Command line
I think it is a permission issue, because if I start the agent with sudo sh bin/agent.sh start it works. I don't want to run it with sudo though. Is there a permission I can give my agent account to make this work?
Update: it seems "chmod 777" on the buildAgent folder solved the problem. Of course, it is not the most secure idea. Would be happy to know the lowest permissions I need to apply.
When you installed the agent, did you use the Mac setup script in the agent's bin directory? I believe it's called mac.launchd.sh. You can't run it via remote terminal or Apple's Remote Desktop or you'll have issues. From the machine (or via VNC) login as the user you want to run TeamCity and run that script from Terminal. Then the agent will start on user login, and will properly upgrade itself when you finally get to upgrading to the latest TeamCity.
My experience with Mac OS X TeamCity agents improved greatly when I stopped trying to run it in the background as a 'daemon' (launchd's term for a boot service) similar to Linux, and instead ran it as an 'agent' (on login service). Typically on a Mac OS build agent you'll want auto login enabled for bits of Xcode to work correctly. Then you just lock it with a screen saver.
I have successfully configured Meteor on my Windows machine via vagrant along with running the sample app in the browser by following the tutorial given at https://gist.github.com/ahoereth/2607d2ee99103a0a9bc9.
For the last two hours, I have explored all of the Window's directories in search of the code created by meteor create sampleapp command, but I can't find any clue where the code is. As vagrant claims that code is in the Windows directory not the VM box, can anyone give me a hint where it could be hiding?
The directory that's shared with the Windows host is the /vagrant directory. In the VM, the home directory might be different, and won't be visible from Windows.
However, if you want to run the Meteor app from the shared directory, be prepared for a world of pain whenever you install a package that has a : in its name, as Windows won't support that character in the filename, and you'll get a cryptic error in the VM.
Since packages in Meteor 0.9+ regularly have : in their names, developing Meteor apps in the VM/Windows shared directory is a no-go.
We are having a linux build server and the build scripts are written in ruby. All the jars are deployed on linux servers only and are generally copied to the application servers using ssh.
There is a new service which needs to be deployed on a windows server. Is there a way to copy and configure the jar deployment from the linux machine to the windows server.
Using ruby / shell scripting?
If you are already using SSH in your build script I would think the easiest thing to do would be to install an SSH server on the Windows box. You can use sshd via Cygwin or opt for a commercial product like WinSSHD (I'm sure there are numerous other free or paid products out there).
Once you have that running you can more than likely reuse most of the existing script relating to moving files around and use a gem like Win32Utils to do any windows specific tasks.
First let me point out I'm a newbie with tomcat & Jenkins. This is the first CI server i have setup.
Im developing a flex app, and my goal is to have jenkins auto-build and run flexUnit tests after changes are pushed to github.
so far I have:
installed Jenkins (1.450) under tomcat (6.0.33) on a headless mac mini server running (10.6.8)
(basically following "Servlet Container Installation on Mac OS X Server (10.6)" #
http://wiki.wocommunity.org/display/WO/Installing+and+Configuring+Jenkins+Build+Server)
downloaded flexSDK, setup user authentication and configured github hooks.
at this point everything is working fine, jenkins will build a simple flex app once changes are pushed to github
now I'm attempting to build the flexUnit Sample CI Project. on first attempt it gets stuck waiting for a replay from Flash Player Debugger (projector). After some research I found flash player needs to run in a virtual display. So I installed Xvnc Jenkins/Hudson Plugin (https://wiki.jenkins-ci.org/display/JENKINS/Xvnc+Plugin).
Os X has a built in vnc server however it doesn't seem to communicate with Xvnc, so I installed tightvnc (via macports).
Then I setup the VNC password in my jobs workspace by running the following command in terminal
"sudo -u _appserver vncpasswd /Library/Jenkins/jobs/flexUnitSampleCIProject/workspace/.vnc/passwd"
And this is where I'm stuck, when I try to build flexUnitSampleCIProject I get the following error
FATAL: Cannot run program "vncserver" (in directory "/Library/Jenkins/jobs/flexUnitSampleCIProject/workspace"): error=2, No such file or directory
java.io.IOException: Cannot run program "vncserver" (in directory "/Library/Jenkins/jobs/flexUnitSampleCIProject/workspace"): error=2, No such file or directory
My gut feeling is this is a permissions issue since jenkins is running under the user _appserver
So I ran ran the following command in terminal
"sudo -u _appserver vncserver :6" and i get the following error
"vncserver: Wrong type or access mode of /Users/admin/.vnc."
However I read sudo doesn't inherit the home folder of the user (in this case "_appserver") and "su _appserver" dosen't work so I'm not sure where to go from here
Has anyone had any luck running flexUnit on mac server/tomcat/jenkins?
any ideas would be greatly appreciated
Have you told the VNC plugin where to find vncserver? It's under "Manage Jenkins" > "Configure System" > Xvnc.
However, depending on how the flash projector works, you may hit other issues because OSX doesn't really run X11, and in particular OSX versions of apps don't run X11;
See How to configure jenkins with xvnc on OSX Lion for maven project for more details on that.