// AcsWsUrl returns the websocket url for ACS given the endpoint. func AcsWsUrl(endpoint, cluster, containerInstanceArn string, taskEngine engine.TaskEngine) string { acsUrl := endpoint if endpoint[len(endpoint)-1] != '/' { acsUrl += "/" } acsUrl += "ws" query := url.Values{} query.Set("clusterArn", cluster) query.Set("containerInstanceArn", containerInstanceArn) query.Set("agentHash", version.GitHashString()) query.Set("agentVersion", version.Version) query.Set("seqNum", strconv.FormatInt(SequenceNumber.Get(), 10)) if dockerVersion, err := taskEngine.Version(); err == nil { query.Set("dockerVersion", dockerVersion) } return acsUrl + "?" + query.Encode() }
// acsWsURL returns the websocket url for ACS given the endpoint func acsWsURL(endpoint, cluster, containerInstanceArn string, taskEngine engine.TaskEngine, acsSessionState sessionState) string { acsUrl := endpoint if endpoint[len(endpoint)-1] != '/' { acsUrl += "/" } acsUrl += "ws" query := url.Values{} query.Set("clusterArn", cluster) query.Set("containerInstanceArn", containerInstanceArn) query.Set("agentHash", version.GitHashString()) query.Set("agentVersion", version.Version) query.Set("seqNum", "1") if dockerVersion, err := taskEngine.Version(); err == nil { query.Set("dockerVersion", dockerVersion) } query.Set(sendCredentialsURLParameterName, acsSessionState.getSendCredentialsURLParameter()) return acsUrl + "?" + query.Encode() }