joeabbey / diver Goto Github PK
View Code? Open in Web Editor NEWDive into the Docker EE APIs
License: Apache License 2.0
Dive into the Docker EE APIs
License: Apache License 2.0
Currently output is formatted with a collection of \t
and spaces... it's not consistent. Moving to "text/tabwriter"
should make this clearer.
get
/set
list
/ ls
create
/ delete
Need to make a decision on which is the correct usage.
@gitcoleman I was thinking that it might be simple enough to export an existing service spec to a Docker compose file, that way you won't need to re-write existing services.
Need a strategy around version handling. Because some of the features / APIs we're working with / exposing are not part of the official API we can't rely on API Version and sometimes have to track on UCP Version (HRM / Interlock is an example of this). Mind-dump:
Need to investigate if this is possible, as all normal client bundle operations are just Docker/Service(swarm) related.
Missing CSV Export of:
(determine if pre-defined objects are ignored or migrated too)
Also issues around the UUIDs that are created as part of objects.
The endpoint is:
GET / PULL /enzi/v0/config/auth/ldap
Support dump filename returned by the ucp api under header Content-Disposition
has a nice timestamp, and may soon even include the ucp instance id. Please create support dump file using this name.
Return service endpoints making it easy to access a service from the CLI.
Will perhaps have a dependancy on being able to query nodes.
To work out what has changed on a service, this feature would compare the spec{}
and the previousSpec{}
and repot the differences.
After downloading, please add the functionality to upload as well , the dB gets refreshed everyday,so it should download and upload as well .
It would be good to have a version check on some commands, for new features that have been introduced in newer versions.
Currently, the majority of HTTP error codes are handled in the wrong places. Better to pass them back to the originally called function so that the correct error message can be reported,
$ diver store subscriptions ls
FATA[0000] json: cannot unmarshal object into Go value of type []store.Subscription
Downloaded the pre-compiled v0.3 binary and when running ./diver
I can see duplicative entries for ucp
:
./diver
This tool uses the native APIs to "dive" into Docker EE
Usage:
diver [command]
Available Commands:
dtr Docker Trusted Registry
help Help about any command
store Docker Store
ucp Universal Control Plane
ucp Universal Control Plane <---
version Version and Release information about the diver tool
Flags:
-h, --help help for diver
--logLevel int Set the logging level [0=panic, 3=warning, 5=debug] (default 4)
Use "diver [command] --help" for more information about a command.
Version: 0.3
Build: 09bdb07f0d66936e873a10d541d3d6d117d9958b
Used to restart a service and rebalance it across the nodes, the use case is if a node went missing or new nodes have been added to the cluster.
User should be able to download the CVE database via the store
Currently the build environment is not a set location, which can lead to a problematic and non-reproducible build.
Idea is to pin make release
to a docker golang container.
Just so we can keep on top of this.
Create a simple web server that can be used to test web hooks/calls are being generated by DTR
He plan is to simplify the readme and move the majority of documentation to multiple markdown files in ./docs
.
Detailed here:
The code is already code to take a container and get itβs net info, and now the code to detach and then attach. This may alleviate some issues, thoughts @trapier
"Pre-built diver binaries are available on the releases page https://github.com/docker/joeabbey/releases"
referes to /docker/joeabbey/
Is there an ETA to moving to the docker
repository I'd rather it not get stuck.
Missing feature is to set the default collection for a user.
diver ucp auth collections setdefault --id <id of user> --collection <id of collection
What up Dan,
Please add some sort of code to display which environment the diver user is currently working on. Currently i have 5 UCP environments configured and i need to know where I'm working when i use this tool.
Thanks
Capability to interact with UCP managers/workers
through the CLI. This might be needed for the Service improvements in #54
Hey Dan,
I'm trying to enable color but i get a flag error no matter where i put the flag.
diver ucp services get tasks --color --name loan
diver ucp services get tasks --name loan --color
diver ucp services get --color tasks --name loan
Error: unknown flag: --color
Thanks
Currently when pulling the bundle and one already exists, diver outputs a success message and doesn't overwrite the original bundle.
Functionality missing to:
Missing features:
Additional functionality to view and examine more containers through the UCP API, also tidy output.
Hi Dan,
I'm not getting any info back from the health command.
12:19:25 wcolemanadmin @ wcolemanlp <> Diver0.3 <> ./diver ucp services get health ?
~/bin/DanDiver/Diver0.2
12:19:29 wcolemanadmin @ wcolemanlp <> Diver0.3 <> ./diver ucp services get health loan
~/bin/DanDiver/Diver0.2
12:19:38 wcolemanadmin @ wcolemanlp <> Diver0.3 <> ./diver ucp services get health
Please let me know if i'm using the correct syntax.
Thanks
Backup / restore can be fragile and sometimes the best way is to just destroy and recreate (either on the same or new infra). Great functionality would be dump out all users/orgs/grants/roles/config (basically everything non-workload related) in a format that can be injected back into a new cluster.
We may already have 90% of what's required here with the auth
subcommand, just need a way of writing it out raw, possibly dealing with UUID relationships, and maybe some reformatting of requests.
Missing Features:
19:16:09 fatal: [localhost]: FAILED! => {"changed": true, "cmd": "diver ucp login --username \"admin\" --password \"XXXXXXXXXXXX\" --url \"https://XX.XX.XX.XX\" --ignorecert", "delta": "0:00:00.719360", "end": "2018-07-15 19:16:08.840696", "msg": "non-zero return code", "rc": 1, "start": "2018-07-15 19:16:08.121336", "stderr": "time=\"2018-07-15T19:16:08Z\" level=fatal msg=\"{\\\"message\\\":\\\"unable to login user on auth provider: API Errors: [\\\\\\\"INTERNAL_ERROR: An internal server error occurred. Contact a system administrator for more information. - Detail: map[requestID:ecab3899-4594-4410-a18d-8afed7153e95]\\\\\\\"]\\\"}\\n\"", "stderr_lines": ["time=\"2018-07-15T19:16:08Z\" level=fatal msg=\"{\\\"message\\\":\\\"unable to login user on auth provider: API Errors: [\\\\\\\"INTERNAL_ERROR: An internal server error occurred. Contact a system administrator for more information. - Detail: map[requestID:ecab3899-4594-4410-a18d-8afed7153e95]\\\\\\\"]\\\"}\\n\""], "stdout": "", "stdout_lines": []}
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.