armory / minnaker

Spinnaker on Lightweight Kubernetes (K3s)
Apache License 2.0
144 stars 53 forks source link

Osx install script fails - helper functions commented out #87

Open gabrnavarro opened 3 years ago

gabrnavarro commented 3 years ago
./scripts/osx_install.sh
Using Armory SpinnakerSetting the Halyard Image to
Running minnaker setup for OSX
./scripts/osx_install.sh: line 103: copy_templates: command not found

The copy_templates helper, as well as other helpers for generating the kubernetes manifests have been commented out in scripts/functions.sh in favor of something else, but they're still being referenced in the osx install script. I tried skipping the copy_templates step, and uncommenting the said helpers, but these did not work as well, and I am getting all sorts of errors as I try to bring back the commented out code.

./scripts/osx_install.sh -P $PRIVATE_IP
/Users/kelly/minnaker-0.1.1
Using Armory SpinnakerSetting the Halyard Image to
Running minnaker setup for OSX
[INFO ] Trying to detect endpoint
/Users/kelly/minnaker-0.1.1/scripts/functions.sh: line 33: : No such file or directory
JoshuaJackson-jobvite commented 3 years ago

Even with a uncommented set of functions you end up with it appears a hal configuration issue potentially of:

hal -l debug config
- Get current deployment
  Failure
Validation in Global:
! ERROR Could not translate your halconfig: Unrecognized field
  "armory" (class
  com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration), not
  marked as ignorable (18 known properties: "security", "artifacts", "providers",
  "pubsub", "persistentStorage", "ci", "notifications", "repository", "name",
  "deploymentEnvironment", "webhook", "version", "timezone", "features", "stats",
  "metricStores", "canary", "spinnaker"])
at [Source: UNKNOWN; line: -1, column: -1] (through reference chain:
  com.netflix.spinnaker.halyard.config.model.v1.node.Halconfig["deploymentConfigurations"]->java.util.ArrayList[0]->com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration["armory"])

- Failed to get deployment name.
bash-5.0$ hal -d config
---> HTTP GET http://localhost:8064/v1/config/currentDeployment/
---> END HTTP (no body)
<--- HTTP 200 http://localhost:8064/v1/config/currentDeployment/ (289ms)
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Type: application/json
Transfer-Encoding: chunked
Date: Thu, 25 Mar 2021 16:59:24 GMT
Keep-Alive: timeout=60
Connection: keep-alive
OkHttp-Sent-Millis: 1616691564314
OkHttp-Received-Millis: 1616691564331

{
  "name" : "Get current deployment",
  "timeout" : 60000,
  "events" : [ ],
  "children" : [ ],
  "uuid" : "106ee0dd-692d-4867-a92b-e70d2ad05d9c",
  "timedOut" : false,
  "version" : "1.41.1-20210226020017",
  "state" : "RUNNING",
  "response" : null,
  "fatalError" : null,
  "runningJobs" : [ ]
}
<--- END HTTP (300-byte body)
---> HTTP GET http://localhost:8064/v1/tasks/106ee0dd-692d-4867-a92b-e70d2ad05d9c/
---> END HTTP (no body)
<--- HTTP 200 http://localhost:8064/v1/tasks/106ee0dd-692d-4867-a92b-e70d2ad05d9c/ (9ms)
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Type: application/json
Transfer-Encoding: chunked
Date: Thu, 25 Mar 2021 16:59:24 GMT
Keep-Alive: timeout=60
Connection: keep-alive
OkHttp-Sent-Millis: 1616691564538
OkHttp-Received-Millis: 1616691564547

{
  "name" : "Get current deployment",
  "timeout" : 60000,
  "events" : [ ],
  "children" : [ ],
  "uuid" : "106ee0dd-692d-4867-a92b-e70d2ad05d9c",
  "timedOut" : false,
  "version" : "1.41.1-20210226020017",
  "state" : "FAILED",
  "response" : {
    "responseBody" : null,
    "problemSet" : {
      "problems" : [ {
        "message" : "Could not translate your halconfig: Unrecognized field \"armory\" (class com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration), not marked as ignorable (18 known properties: \"security\", \"artifacts\", \"providers\", \"pubsub\", \"persistentStorage\", \"ci\", \"notifications\", \"repository\", \"name\", \"deploymentEnvironment\", \"webhook\", \"version\", \"timezone\", \"features\", \"stats\", \"metricStores\", \"canary\", \"spinnaker\"])\n at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: com.netflix.spinnaker.halyard.config.model.v1.node.Halconfig[\"deploymentConfigurations\"]->java.util.ArrayList[0]->com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration[\"armory\"])",
        "remediation" : null,
        "options" : null,
        "severity" : "FATAL",
        "location" : "Global"
      } ]
    }
  },
  "fatalError" : {
    "cause" : null,
    "stackTrace" : [ {
      "classLoaderName" : "app",
      "moduleName" : null,
      "moduleVersion" : null,
      "methodName" : "getHalconfig",
      "fileName" : "HalconfigParser.java",
      "lineNumber" : 132,
      "className" : "com.netflix.spinnaker.halyard.config.config.v1.HalconfigParser",
      "nativeMethod" : false
    }, {
      "classLoaderName" : "app",
      "moduleName" : null,
      "moduleVersion" : null,
      "methodName" : "getConfig",
      "fileName" : "ConfigService.java",
      "lineNumber" : 37,
      "className" : "com.netflix.spinnaker.halyard.config.services.v1.ConfigService",
      "nativeMethod" : false
    }, {
      "classLoaderName" : "app",
      "moduleName" : null,
      "moduleVersion" : null,
      "methodName" : "getCurrentDeployment",
      "fileName" : "ConfigService.java",
      "lineNumber" : 41,
      "className" : "com.netflix.spinnaker.halyard.config.services.v1.ConfigService",
      "nativeMethod" : false
    }, {
      "classLoaderName" : "app",
      "moduleName" : null,
      "moduleVersion" : null,
      "methodName" : "build",
      "fileName" : "DaemonResponse.java",
      "lineNumber" : 123,
      "className" : "com.netflix.spinnaker.halyard.core.DaemonResponse$StaticRequestBuilder",
      "nativeMethod" : false
    }, {
      "classLoaderName" : "app",
      "moduleName" : null,
      "moduleVersion" : null,
      "methodName" : "lambda$submitTask$1",
      "fileName" : "TaskRepository.java",
      "lineNumber" : 48,
      "className" : "com.netflix.spinnaker.halyard.core.tasks.v1.TaskRepository",
      "nativeMethod" : false
    }, {
      "classLoaderName" : null,
      "moduleName" : "java.base",
      "moduleVersion" : "11.0.5",
      "methodName" : "run",
      "fileName" : "Thread.java",
      "lineNumber" : 834,
      "className" : "java.lang.Thread",
      "nativeMethod" : false
    } ],
    "problems" : {
      "problems" : [ {
        "message" : "Could not translate your halconfig: Unrecognized field \"armory\" (class com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration), not marked as ignorable (18 known properties: \"security\", \"artifacts\", \"providers\", \"pubsub\", \"persistentStorage\", \"ci\", \"notifications\", \"repository\", \"name\", \"deploymentEnvironment\", \"webhook\", \"version\", \"timezone\", \"features\", \"stats\", \"metricStores\", \"canary\", \"spinnaker\"])\n at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: com.netflix.spinnaker.halyard.config.model.v1.node.Halconfig[\"deploymentConfigurations\"]->java.util.ArrayList[0]->com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration[\"armory\"])",
        "remediation" : null,
        "options" : null,
        "severity" : "FATAL",
        "location" : "Global"
      } ]
    },
    "responseCode" : 409,
    "message" : "Could not translate your halconfig: Unrecognized field \"armory\" (class com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration), not marked as ignorable (18 known properties: \"security\", \"artifacts\", \"providers\", \"pubsub\", \"persistentStorage\", \"ci\", \"notifications\", \"repository\", \"name\", \"deploymentEnvironment\", \"webhook\", \"version\", \"timezone\", \"features\", \"stats\", \"metricStores\", \"canary\", \"spinnaker\"])\n at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: com.netflix.spinnaker.halyard.config.model.v1.node.Halconfig[\"deploymentConfigurations\"]->java.util.ArrayList[0]->com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration[\"armory\"])",
    "suppressed" : [ ],
    "localizedMessage" : "Could not translate your halconfig: Unrecognized field \"armory\" (class com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration), not marked as ignorable (18 known properties: \"security\", \"artifacts\", \"providers\", \"pubsub\", \"persistentStorage\", \"ci\", \"notifications\", \"repository\", \"name\", \"deploymentEnvironment\", \"webhook\", \"version\", \"timezone\", \"features\", \"stats\", \"metricStores\", \"canary\", \"spinnaker\"])\n at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: com.netflix.spinnaker.halyard.config.model.v1.node.Halconfig[\"deploymentConfigurations\"]->java.util.ArrayList[0]->com.netflix.spinnaker.halyard.config.model.v1.node.DeploymentConfiguration[\"armory\"])"
  },
  "runningJobs" : [ ]
}
<--- END HTTP (5694-byte body)

https://github.com/armory/minnaker/commit/014ed9198ee4f1c80df9333d10d417ad9b69e7ae is the commit where this was commented to move appropriately to the operator type setup as that is generally the way for kube folks are heading with managing this service setup. However, it appears that this setup entirely broke the ability to setup minnaker on osx which would be a very common platform for a large number of engineers.

@alchen99 @away168 @chadtripod as the coauthors for this can you provide some clarity about the goal and any timeline yu might have on getting the osx minnaker into a functional state for the osx installer.

mmarquezvacas commented 3 years ago

Hello. I'm having the same problem installing with Minnaker in MacOS 11.4. Does any plan exist to solve this problem?

dominiqueplante commented 3 years ago

Running into same issue (also on MacOS 11.4) and minnaker-0.1.3

alchen99 commented 3 years ago

Looks like macOS and https://github.com/armory/spinnaker-operator are not compatible. Until this issue is fixed please use this version https://github.com/armory/minnaker/tree/0.0.22 instead.