nitrous.io environment variables for check develop or production server - nitrousio

In my configuration files, I use environment variables for check if is a develop or production server.
For example: OpenShitf have variables like OPENSHIFT_REPO_DIR, etc.
Does Nitrous.io have some default environment variables?

Nitrous is a fairly standard linux install. So it has a lot of environment variables by default. Just type set and the shell and you will see a list.
SHELL=/bin/bash
...

Related

How to install and run Mercurial server on a remote Linux host with limited user rights?

I have a remote managed hosting Linux server and I would like to install and run a Mercurial server on it to communicate with from local repositories (clone, pull, push).
The server has Apache, PHP, MySql, Python and RubyOnRails.
I can also access the remote system over SSH, but the command repertoire is limited: e.g. there is no such thing as apt-get, so I cannot download and deploy the server directly.
Is there any possibility to bypass these limitations and have a Mercurial server operating on such a server? Or does any other Version Control system exist that would allow this kind of usage? Is there probably a PHP- or Python-driven Version Control Server around (which I failed to find)?
This depends on the restrictions set in place. Mercurial is a normal Python program and the Mercurial server is part of the normal distribution. If you are using SSH as a transport protocol, nothing but a Mercurial installation in your $PATH is required. For HTTP access you will need to either run the Mercurial hg serve command or install the necessary wsgicgi module.
Now let's assume you want to access the repositories via SSH, and only need a Mercurial installation, but cannot run apt-get, consider the following:
You must have Python installed
You can try installing Mercurial from sources by downloading the tarball from https://www.mercurial-scm.org/downloads.
Run make install PREFIX=~/mercurial to install the Mercurial distribution to ~/mercurial.
Ensure ~/mercurial is in your $PATH during your SSH session by adding export PATH=$PATH:~/mercurial to your ~/.profile.
If you cannot install Mercurial from sources, you can consider building Mercurial on a compatible Linux systems. E.g. your servers runs Ubuntu 19.04, and you run locally Ubuntu 19.04. Install the distribution as described to your local directory and rsync the distribution to your server.
On your local linux machine: make install PREFIX=~/mercurial to install the Mercurial distribution to ~/mercurial.
rsync -avzP ~/mercurial server:~/mercurial
Set path variable to ~/mercurial as described above.

Replace mariadb with mysql on Plesk 12.5.30

I need to use standard mysql, in plesk it says everywhere that it is mysql but when I login to console it says mariadb.
I understand that it is very similar but this plesk will be hosting staging systems so they must use exactly the technology that the product servers use.
Is it possible to do it somehow using the web interface or do I have to manually install it from console?
As I see it's impossible because plesk-mysql-server package has explicit dependency for mariadb-server.
Yes, you can solve this with --force, but it means further troubles with plesk updates and upgrades.
If you need DB server for some application you can install it on separate server and register it as remote DB server in Tool&Settings > Database Servers.

What do I have to be aware of when installing Reporting Services on a productive SQL Server 2008

I have a running sql server installation on which I would like to install the reporting services module. Now because it is very important that the sql server it self keeps available and running without any interruptions I get a little scary about this step.
Now my question. Are there any pittfalls I have to be aware of before I install the module? E.g. does the server restart during the installation?
Can you try this change in a virtual machine first?
For example, use the Disk2vhd application (http://technet.microsoft.com/en-us/sysinternals/ee656415.aspx) to make a snapshot of your current production system. Then, use the VHD that was created in Microsoft Virtual PC, Hyper-V, or Windows 7 native VHD boot.
If you try a virtual machine for testing, disable networking or create a private network before starting the virtual machine! Having two servers with the same name and SID on your network is a Bad Thing.
(If you're not using virtual machines, isn't it time? :)

SqlServer 2008 - Enable Net Named Pipes via command line

As part of our Integration build we are installing sql server 2008 on a machine then deploying various software on it. One piece of software requires that Net Named pipes is enabled for it to install.
As the server is built automatically as part of our continuous build process, we have to be able to do this via a non-interactive command line.
Does anyone know of a way to enable the named pipes within the "Sql Server Network Configuration" section without a gui? (I.e. Command line only)
I think the cli tool sac will do, what you need to do.
http://blogs.technet.com/b/matthewms/archive/2005/10/13/412453.aspx
See the -N option.
Turns out that the protocol information is stored in the registry at :
HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQLServer\SuperSocketNetLib
There is also a powershell for Sql Server that is called sqlps.exe that is in the Binn directory of Sql server. That also offers programatic access to the configuration.
In my case, importing a previously exported registry key for the net named pipes works just as I want it too.

Automatic tool detection with Jenkins/Hudson?

What mechanisms exists in Jenkins/Hudson to automatically detect tools that are installed on the Nodes?
For example, .NET frameworks, Visual Studio versions, Setup-Builder Tools, installed scripting language executables, etc.
I'm currently trying to figure out if and how (and whether it makes sense) Jenkins can auto-detect our tools that I have to install on all the Nodes (Salves).
Since our Nodes are Windows machines, hard-coding paths doesn't make sense (IMHO) due to path mismatch Windows 64bit vs. 32bit / XP vs. Windows 7 / different language versions.
Also, quite a few tools require installation, so just mirroring over files isn't an option either.
Obviously, I could just define a set of environment variables for our tools and use these from Jenkins. But I much rather use/build something that makes new Nodes/Slaves auto-configured.
You can also read this question as: Is it possible to write a plugin that automatically detects "stuff" on Windows slaves and makes that available as Node Properties? (and where would I start if I wanted to do that?)
AFAIK, the only tools that Jenkins can natively autoconfigure are Java JDK, Ant, and Maven. I'm not sure what other plugins can do.
You might have to go the environment variables way, or you could create a multi-configuration job that installs your tools onto the slaves, if they don't already exist. This would assume that your tools can do quiet installs, and that you can specify the installation directory (same across all platforms).
I've gone with the route of having a set of common environment variables for all nodes.
Since I have to manage what is installed on the Windows nodes manually anyway -- many tools have installers I need to run prior to using them -- adjusting the environment variables on each node isn't such a big deal. (I have a small batch script that set's up everything via setx.)