Skip to main content

Deploy, run, and test applications in the cloud with Deploy Agent and SparkView

Deploy Agent is an automatic deployment / testing tool. It deploys scripts, applications to a remote server, which has a SSH server running on, through the Spark Gateway. So the client only knows the remote server name but nothing else.

To use the Deploy Agent:

  1. Preparation:
    1. This feature is disabled by default. Please set deployment = true in gateway.conf to enable it.
    2. Generating SSH key pair: the public key and private key (if need, refer to: https://confluence.atlassian.com/bitbucketserver/creating-ssh-keys-776639788.html), and deploying the public key on the remote server as described in above link.
    3. Send the private key, together with the user name used to create the key pair to the client.
    4. On the client side, download executable Deploy Agent from RemoteSpark website (e.g.: on windows platform, it is deploy.exe).
  2. Configure the remote server on the gateway:

    On the gateway, add the remote server in the servers.json file. As a sample, the following lines can be added in the list of “connections” of the file servers.json to set up the remote server on the gateway:
    "connections": [
      {
        "id": "xUbuntu_SSH", //the remote server name, which is the only information the client will know
        "displayName": "xUbuntu_SSH",
        "server": "10.0.0.42", //the IP of the remote server behind of the firewall
        "shadowing": false,
        "protocols": "rdp",
        "ssh": {
          "port": 3389,
          "username": "vmuser",
          "password": "password",
          "fontSize": 13,
          "mapClipboard": true,
          "sessionRecord": 0
        },
        "userUsages": []
      },
    
    In above sample, we setup a remote server which supports RDP connection and shadowing. Make sure, for Deploy Agent tool, the remote server MUST have SSH server running on the port 22.

    Again, the only information of the remote server a client can see is the server name. So it perfectly prevent exposing too much information behind the firewall to the external users.
  3. Run Deploy Agent on the client side.
    1. The client keeps the downloaded Deploy Agent executable (e.g.: deploy.exe) and private key file (usually the id_rsa file) in local machine.
    2. There are two typical ways to run the Deploy Agent tool: