dapr / cli Goto Github PK
View Code? Open in Web Editor NEWCommand-line tools for Dapr.
License: Apache License 2.0
Command-line tools for Dapr.
License: Apache License 2.0
The current pipeline creates "actions" instead of "actions.exe"
running actions init
tries to copy something into a privileged location (/usr/local/bin
) that's fine, but you might want to:
a) print a more useful error message (e.g. 'sudo actions init') instead of just failing the write.
b) provide a command line option for saving to an alternate location so that people w/o root can still install.
Currently hardcoded to C:\dapr on Windows and /usr/local/bin on Mac/Linux.
The component structure has changed to support secrets. The CLI needs to create a component YAML that conforms to the runtime.
Support detach option in actions run.
I ssh to my ubuntu machine (most developers just to ssh in a terminal to linux machine).
Currently cli runs the action and user process in non-detached mode, so to do anything else I need to start other terminal session. Supporting detach mode for linux users is a must have.
Granted users can run it as daemon with &, but we will have to tell users to run it as daemon. Supporting a detach option makes it very similar to docker option.
These CLI docs need to be moved to docs repo under reference/CLI
KEEP the release notes folder under docs here.
When actions init
fails due to a docker issue, it doesn't bubble the issue up:
C:\actions>actions init
Making the jump to hyperspace...
Placement Service installation skipped due to Docker run error
Success! Get ready to rumble
We should bubble up all potentially valuable errors for users to more easily debug
This should handle both the cases of Docker not installed and Docker not running on all platforms.
The document includes how we build/test/debug
cc @youngbupark
Steps to reproduce:
make build
Problems:
chmod +x ./actions
../actions: line 1: syntax error near unexpected token `newline'
./actions: line 1: `!<arch>`
I have an actions run where the node process appears to have crashed. I can't seem to use the actions CLI to stop it (since the process doesn't exist) but I also can't seem to run a new revision of the app.
Allow users a more streamlined getting started experience using the cli, by having a setup
command install Redis on a k8s cluster and set up the component yaml automatically on behalf of the user.
actions init
(including download progress)Justification:
Once actions repo goes public, it makes sense to download actions binaries from GH release not to maintain blob storage.
to get latest release:
https://developer.github.com/v3/repos/releases/#get-the-latest-release
to get the specific version release
https://developer.github.com/v3/repos/releases/#get-a-release-by-tag-name
Exit criteria:
Problem:
Dapr init
update dapr runtime without updating placement container. Dapr uninstall needs to remove placement container to clean up.
When I download in VS-Code Terminal (or in Open Source Windows Terminal) the pulsing download animation is pretty janky. I'd suggest switching to something less fancy (e.g. classic spinning lines) or something like that.
Need the ability to set the logging level for the ActionsRT.exe i.e. ./actionsrt --log-level error
from the run command. e.g.
actions run --app-id nodeapp --app-port --log-level debug 3000 node app.js
Tested on Windows. The Init command claims success on Windows when Docker is not running.
Create a separate Development Guide for Dapr CLI and extract out the development steps from main Readme page.
Use temp dirs.
CLI init command should return meaningful message instead of "exit status 1" when kubectl is not installed/configured
both docs should be consistent.
https://github.com/actionscore/cli
https://github.com/actionscore/cli/tree/master/docs/preview
/area test-and-release
Archive cli linux/macos binaries by tar.gz in CI
Most linux distros don't include unzip by default
Add the following to docs:
Ability to dynamically add/update/remove components
Remove version check after actions runtime is release in sept 1 endgame
actions list --endpoints will list out the endpoints from the user app
dapr/dapr#113 introduced several breaking changes.
This issue will track all related tasks.
Current message is:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise>actions init
Making the jump to hyperspace...
Downloading binaries and setting up components...
exec: "docker": executable file not found in %!P(MISSING)ATH%!(NOVERB)
If you run CLI init method with an non-existing runtime version with the --runtime-version switch, the CLI reports "not a valid zip file". It should report "runtime version not found".
Along with #81, cli needs to download *.tar.gz for macos/linux and extract it in the next preview release.
In order to enable profiling in Standalone mode, the CLI needs to pass the --enable-profiling
flag to the runtime.
Instead, we can list all the available Actions and pick any of them. If there are non running, should output a message saying "couldn't find any actions instance running".
Change confirmation message from Dapr is up and running
to Dapr has been installed
.
dapr init --kubernetes option should configure redis in kubernetes to be on par with local actions init setup.
On a Windows machine run "actions init"
C:\Users\mfussell\go\src\github.com\actions-org\cli>actions init
Making the jump to hyperspace...
Error extracting actions binary: zip: not a valid zip file
As of now, when we start an action and then close that console window, it continues to exist:
> actions list
APP ID ACTIONS PORT APP PORT COMMAND AGE CREATED
pythonapp 3500 3000 python app.py 2d 2019-08-14 12:09.34
There is then no way to stop the running action, which presents an issue if we want to reuse the action port.
Feature request: Add a new "stop" or "delete" verb to the CLI take down an action
Need to address common issues and resolutions:
For Example:
First Issue : On Windows, while building cli "mingw32-make.exe build"
if you see the below error
"
process_begin: CreateProcess(NULL, uname -m, ...) failed.
mingw32-make.exe: Makefile:25: pipe: No error
'head' is not recognized as an internal or external command,
operable program or batch file.
'head' is not recognized as an internal or external command,
operable program or batch file.
process_begin: CreateProcess(NULL, uname, ...) failed.
mingw32-make.exe: Makefile:37: pipe: Bad file descriptor
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -ldflags "-X main.version=edge -X main.apiVersion=1.0" -mod=vendor
-o ./dist/windows_amd64/release/dapr.exe;
'CGO_ENABLED' is not recognized as an internal or external command,
operable program or batch file.
mingw32-make.exe: *** [Makefile:81: dapr] Error 1"
Resolution Check if the Git bin path is existing in the Path variable.
You can run this command which will update the git and add the paths in the Path variable.
choco install git.install --params "/GitAndUnixToolsOnPath /NoGitLfs /SChannel /NoAutoCrlf"
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.