Releases: ohsu-comp-bio/funnel-plugins
Releases · ohsu-comp-bio/funnel-plugins
0.1.1
Changelog
- e910645 Add Dockerfiles
- 99630d7 Add support for custom endpoints
- 30e4ca9 Update README.md
- 02c01d7 Convert sequence diagram to Mermaid syntax
- d521484 Update test-server response
- 5d96a83 Update README.md
- 0291844 Update README.md
- 21020b5 Update response
- c949de1 Update test server response
- 6b361ab Update README.md
- 3bcc194 Update tests.yaml
- 16a71d1 Add structured response to the test server
- 9c2e752 Add plugin manager for easier plugin loading
- d2aa0e2 Update README.md
- 7457e8c Update README.md
- 0169c2e Update README.md
- 15cae2e Update Test Server
- a7850c6 Update README.md
- 8b04019 Update README.md
- c2bb4e6 Update README.md
- 3e1dcd5 Update README.md
- 431699e Update README.md
- 554e9e7 Update README.md
- c44b86e Update GitHub Actions
- 3924f81 Add GitHub Actions for running tests
- bdaf6da Add initial test server (localhost:8080)
- b0fd4ad Running gRPC example with external service call (http://localhost:8080)
- c78e1bf Running gRPC example (file-based key value store)
- a744c68 Running basic example
- 3ed742c Streamline plugin code (YAGNI)
- 6da42cc Create Dockerfile
0.1.0
Adapted from Funnel PR #1150
Overview
This release adds initial support for querying the Gen3Workflow service (http://localhost:8080/s3
) to authorize users in TES Workflows.
Example Funnel Config ✍️
config.yaml
:
Plugins:
Disabled: false
Dir: plugin-binaries/
Plugins:
- auth
Steps 🌀
1. Start Server 🚀
➜ gh pr checkout 1150
➜ make install
➜ funnel server run --config config.yaml
server Server listening
httpPort 8000
rpcAddress :9090
2. Test Unauthenticated User (Example
) ❌
# Try to submit Task as an unauthenticated user
➜ curl --header "Authorization: Bearer Example" \
--data @examples/hello-world.json \
http://localhost:8000/tasks
{
"error": "Error: User Example not found ❌\n"
}
3. Test Authenticated User (Alyssa P. Hacker
) ✅
# Submit task as authenticated user
➜ curl --header "Authorization: Bearer Alyssa P. Hacker" \
--data @examples/hello-world.json \
http://localhost:8000/tasks
{
"id": "cv17vbpurbu2jasvmrk0"
}
# Verify task completed
➜ funnel task get cv17vbpurbu2jasvmrk0 --view minimal
{
"id": "cv17vbpurbu2jasvmrk0",
"state": "COMPLETE"
}
4. Start Gen3 Workflow 🔷
➜ python run.py
gen3workflow.app:app running at 0.0.0.0:8080
INFO: Started server process [65920]
INFO: Waiting for application startup.
INFO: Application startup complete.
Next Steps 🚧
- Add support to configure endpoint that Plugin should target (currently hardcoded to mock auth database)
- Run
gen3-workflow
as a standalone service (mock Fence Auth?) - Target
/s3
endpoint