In a continous integration job, download the agent, chmod it and run it.
# for HTTP hosted server
curl http://HOSTPORT/docs/agent > agent
./agent ws://HOST:PORT/agent/ID
chmod 755 agent
# for HTTPS hosted server
curl https://HOSTPORT/docs/agent > agent
./agent wss://HOST:PORT/agent/ID
chmod 755 agent
Above, HOST:PORT is the hostname:port of the converge server and ID is a unique id for the job. This should not conflict with other ids. This connects the agent to the converge server. Clients can now connect to converge to establish a connection to the CI job through converge.
Local clients can connect using regular ssh and sftp commands through a tunnel that translates a local TCP port to a websocket connection in converge. First step is to download the tcptows program (see below):
# for HTTP hosted server
curl http://HOST:PORT/docs/wstotcp > wstotcp
chmod 755 wstotcp
./wstotcp 10000 ws://HOST:PORT/client/ID
# for HTTPS hosted server
curl https://HOST:PORT/docs/wstotcp > wstotcp
chmod 755 wstotcp
./wstotcp 10000 wss://HOST:PORT/client/ID
This runs a local client that allows SSH to port 10000 and connects to converge using a websocket connection.
Next step is to run a local SSH of SFTP client:
ssh -p 10000 abc@localhost
sftp -oPort 10000 abc@localhost
abc is a fixed user defined by converge. It has a very exciting password.