wunderio / radi-cli Goto Github PK
View Code? Open in Web Editor NEWCLI interface for the Radi-API
CLI interface for the Radi-API
If the radify script is run in a project that has already been "radified" then the following error occurs:
INIT> https://raw.githubusercontent.com/wunderkraut/radi-project-wundertoolswrapper/master/.radi/init.yml [temporarily in : /tmp/tmp.Fj0Oelggv1
--> replacing Project template variable
--> replacing base-port template variable
--> Running template init:
No help topic for 'local.project.create'
When trying to output the radi cli version, an error is produced:
-> % radi -v
flag provided but not defined: -v
Usage of radi:
-debug
Enable verbose debugging output
-environment string
Activate a specific environment (default "local")
but the general radi help says that it is a valid flag:
GLOBAL OPTIONS:
--environment value Activate a specific environment
--debug Enable verbose debugging output (default: false) [$RADI_DEBUG]
--help, -h show help (default: false)
--version, -v print the version (default: false)
Currently when the make system builds (both containerized and local), the dependencies pulled are "latest" releases.
This causes breakage when upstream versions undergo API breakage.
when running make locally, the following errors occur:
-> % make fmt binary install
"./build/make.sh" fmt
---> Make-bundle: fmt (in .)
--> Applying go formatting (gofmt) to the entire application
"./build/make.sh" binary
---> Make-bundle: binary (in .)
--> Building ./bin/radi
radi/command.go:6:2: cannot find package "github.com/Sirupsen/logrus" in any of:
/usr/lib/go/src/github.com/Sirupsen/logrus (from $GOROOT)
/home/james/.local/share/go/src/github.com/Sirupsen/logrus (from $GOPATH)
radi/operation.go:10:2: cannot find package "github.com/wunderkraut/radi-api/operation" in any of:
/usr/lib/go/src/github.com/wunderkraut/radi-api/operation (from $GOROOT)
/home/james/.local/share/go/src/github.com/wunderkraut/radi-api/operation (from $GOPATH)
radi/command.go:9:2: cannot find package "github.com/wunderkraut/radi-api/operation/command" in any of:
/usr/lib/go/src/github.com/wunderkraut/radi-api/operation/command (from $GOROOT)
/home/james/.local/share/go/src/github.com/wunderkraut/radi-api/operation/command (from $GOPATH)
radi/operation.go:11:2: cannot find package "github.com/wunderkraut/radi-api/operation/security" in any of:
/usr/lib/go/src/github.com/wunderkraut/radi-api/operation/security (from $GOROOT)
/home/james/.local/share/go/src/github.com/wunderkraut/radi-api/operation/security (from $GOPATH)
radi/settings.go:6:2: cannot find package "github.com/wunderkraut/radi-handlers/bytesource" in any of:
/usr/lib/go/src/github.com/wunderkraut/radi-handlers/bytesource (from $GOROOT)
/home/james/.local/share/go/src/github.com/wunderkraut/radi-handlers/bytesource (from $GOPATH)
radi/discover.go:8:2: cannot find package "github.com/wunderkraut/radi-handlers/local" in any of:
/usr/lib/go/src/github.com/wunderkraut/radi-handlers/local (from $GOROOT)
/home/james/.local/share/go/src/github.com/wunderkraut/radi-handlers/local (from $GOPATH)
radi/command.go:7:2: cannot find package "gopkg.in/urfave/cli.v2" in any of:
/usr/lib/go/src/gopkg.in/urfave/cli.v2 (from $GOROOT)
/home/james/.local/share/go/src/gopkg.in/urfave/cli.v2 (from $GOPATH)
make: *** [Makefile:20: binary] Error 1
Many commands run return a finishing message that is difficult to interpret, especially when they fail.
an example is if local orchestration fails:
errors=[Authorization failed. You are not permitted to execute the requested operation: orchestrate.up] id=orchestrate.up success=false
Authorization failed. You are not permitted to execute the requested operation: orchestrate.up
Currently the build.sh script only builds the binary, but does not install it. It would be good addition to install it. On macOS we can use /usr/local/bin/
folder which is properly configured already if Homebrew is in use.
Most tools provide at least bash completion these days. Some ZSH completion would be a high priority for us in wunder.
Add minimum requirements etc. to the documentation.
The typical CLI commands are really long, and are annoying to type.
Some shorter names would be nice, and maybe some autocomplete would be handy.
When I run the local up orchestration command, I get an error regarding existing volumes:
-> % radi up
Creating network "wundertest_default" with driver ""
ERRO[0000] Error occured running operation error="Volume \"assets_private\" needs to be recreated - driver has changed" errors=[Volume "assets_private" needs to be recreated - driver has changed] id=orchestrate.up success=false
Volume "assets_private" needs to be recreated - driver has changed
When using using a local project with libcompose, the orchestration succeeds, but the resulting containers cannot properly see each other.
The following log entries are recorded:
[www_1]-->2017/02/10 09:31:03 [error] 5#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 172.19.0.1, server: _, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.53.53:9000", host: "localhost:8081"
[www_1]-->2017/02/10 09:31:16 [info] 5#0: *1 client 172.19.0.1 closed keepalive connection
when running the build in some *buntu boxes, the build.sh script generates the following error:
"./build/make.sh" binary
---> Make-bundle: binary (in .)
go: unknown subcommand "generate"
Run 'go help' for usage.
make: *** [binary] Fehler 2
Create new database image with drupal:password credentials.
when manually building, the following error occurs:
--- Finished dependency update
"./build/make.sh" binary
---> Make-bundle: binary (in .)
--> Building ./bin/radi
radi/main.go:4:2: cannot find package "context" in any of:
with go version: go version xgcc (Ubuntu 4.9.3-0ubuntu4) 4.9.3 linux/amd64
Make fails with the following:
❯ make all
"./build/make.sh" getdeps
---> Make-bundle: getdeps (in .)
--> updating vendor dependencies [recursively]
Submodule path 'vendor/github.com/Sirupsen/logrus': checked out '3f603f494d61c73457fb234161d8982b9f0f0b71'
Submodule path 'vendor/github.com/wunderkraut/radi-api': checked out 'b6d485c69dab1e6378bb24f342ca0c70fb45ffb6'
Submodule path 'vendor/github.com/wunderkraut/radi-api/vendor/github.com/Sirupsen/logrus': checked out '61e43dc76f7ee59a82bdf3d71033dc12bea4c77d'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-rancher': checked out '48e4c46cbef80bf9812c6e577d65635f0140e9e1'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-rancher/vendor/github.com/Sirupsen/logrus': checked out '61e43dc76f7ee59a82bdf3d71033dc12bea4c77d'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-rancher/vendor/github.com/rancher/go-rancher': checked out '2c43ff300f3eafcbd7d0b89b10427fc630efdc1e'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-rancher/vendor/gopkg.in/yaml.v2': checked out '4c78c975fe7c825c6d1466c42be594d1d6f3aba6'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-upcloud': checked out 'f521f98e3beed2c299fd0c3e4bbdfd02c33d6660'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-upcloud/vendor/github.com/Jalle19/upcloud-go-sdk': checked out '6151bdd7a30cdb0c72f665f81c2ef7a438d9c29e'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-upcloud/vendor/github.com/Sirupsen/logrus': checked out '61e43dc76f7ee59a82bdf3d71033dc12bea4c77d'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-upcloud/vendor/github.com/blang/semver': checked out '4a1e882c79dcf4ec00d2e29fac74b9c8938d5052'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-upcloud/vendor/github.com/hashicorp/go-cleanhttp': checked out 'ad28ea4487f05916463e2423a55166280e8254b5'
Submodule path 'vendor/github.com/wunderkraut/radi-handler-upcloud/vendor/gopkg.in/yaml.v2': checked out '4c78c975fe7c825c6d1466c42be594d1d6f3aba6'
Submodule path 'vendor/github.com/wunderkraut/radi-handlers': checked out 'ea902396fba7888b3fc48298d8b0fccb8ff5c57b'
Submodule path 'vendor/github.com/wunderkraut/radi-handlers/vendor/github.com/Sirupsen/logrus': checked out '61e43dc76f7ee59a82bdf3d71033dc12bea4c77d'
Submodule path 'vendor/github.com/wunderkraut/radi-handlers/vendor/github.com/docker/libcompose': checked out '5cba1677dc9906646fc639c21a098ed960033d2d'
Submodule path 'vendor/github.com/wunderkraut/radi-handlers/vendor/github.com/james-nesbitt/init-go': checked out '94fcc5d0a408896a653847f7078deac13422c76b'
Submodule path 'vendor/github.com/wunderkraut/radi-handlers/vendor/gopkg.in/yaml.v2': checked out '4c78c975fe7c825c6d1466c42be594d1d6f3aba6'
Submodule path 'vendor/gopkg.in/urfave/cli.v2': checked out 'e485446237011b8abac93919242e6f059ad56c87'
--- Finished dependency update
"./build/make.sh" binary
---> Make-bundle: binary (in .)
--> Building ./bin/radi
main/command.go:6:2: cannot find package "github.com/Sirupsen/logrus" in any of:
/usr/lib/golang/src/github.com/Sirupsen/logrus (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/Sirupsen/logrus (from $GOPATH)
main/operation.go:10:2: cannot find package "github.com/wunderkraut/radi-api/operation" in any of:
/usr/lib/golang/src/github.com/wunderkraut/radi-api/operation (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/wunderkraut/radi-api/operation (from $GOPATH)
main/command.go:9:2: cannot find package "github.com/wunderkraut/radi-api/operation/command" in any of:
/usr/lib/golang/src/github.com/wunderkraut/radi-api/operation/command (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/wunderkraut/radi-api/operation/command (from $GOPATH)
main/operation.go:11:2: cannot find package "github.com/wunderkraut/radi-api/operation/security" in any of:
/usr/lib/golang/src/github.com/wunderkraut/radi-api/operation/security (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/wunderkraut/radi-api/operation/security (from $GOPATH)
main/main.go:12:2: cannot find package "github.com/wunderkraut/radi-cli/local" in any of:
/usr/lib/golang/src/github.com/wunderkraut/radi-cli/local (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/wunderkraut/radi-cli/local (from $GOPATH)
main/main.go:13:2: cannot find package "github.com/wunderkraut/radi-cli/version" in any of:
/usr/lib/golang/src/github.com/wunderkraut/radi-cli/version (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/wunderkraut/radi-cli/version (from $GOPATH)
main/settings.go:6:2: cannot find package "github.com/wunderkraut/radi-handlers/bytesource" in any of:
/usr/lib/golang/src/github.com/wunderkraut/radi-handlers/bytesource (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/wunderkraut/radi-handlers/bytesource (from $GOPATH)
main/discover.go:8:2: cannot find package "github.com/wunderkraut/radi-handlers/local" in any of:
/usr/lib/golang/src/github.com/wunderkraut/radi-handlers/local (from $GOROOT)
/home/arturs/Workspace/go/src/github.com/wunderkraut/radi-handlers/local (from $GOPATH)
main/command.go:7:2: cannot find package "gopkg.in/urfave/cli.v2" in any of:
/usr/lib/golang/src/gopkg.in/urfave/cli.v2 (from $GOROOT)
/home/arturs/Workspace/go/src/gopkg.in/urfave/cli.v2 (from $GOPATH)
Makefile:20: recipe for target 'binary' failed
make: *** [binary] Error 1
Now that the wrapper is using the project provided build.sh
for building, a D7 wrapper should be viable.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.