Comments (7)
packages/toolkit contains a reference to the octokit/rest package which not all actions need. Perhaps we need a better name for that package that indicates it is primarily designed for working with the GitHub rest api.
from toolkit.
@chrispat - right - that's important. In our previous discussions, we discussed calling that package github (since it's all about github interactions and context). Outside of that, moving exit to core is the other thing that seems right since how you exit an exit seems like a core concept. Either that or we break out other core actions as separate packages - just looking for consistency.
from toolkit.
I'm going to let @damccorm create a proposal as a PR and then we can iterate from there. I think this issue and previous discussions capture what we need to do.
from toolkit.
I know we went through a set of design discussions early on and this is what we had decided on. However, it does feel like we have some extra packages that don't layer particularly well.
All types of actions whether for SDLC or CI/CD will likely need the core and exit functionality for logging and indicating their exit status. Given that I think it makes the most sense to merge exit into core. Also, neither core nor exit stands on their own outside of an action.
After that, we have some utility packages that help out with running tools (exec) and common GNU file operations (io). For the most part, these feel like general utility packages that could stand on their own outside of GitHub actions.
toolkit adds an exit package that really just adds some additional logging. If we find that useful let's just make that part of exit in core.
There is a smattering of other stuff in tool kit around easy running of an async function and required environment variables that feel like they should just be part of core.
The last piece that is there is the octokit api. I think we should have a package called actions/github that makes it easy to get an authenticated client based in the GITHUB_TOKEN secret.
from toolkit.
This all sounds good to me. I think we should get @jclem to weigh in, and assuming no issues, ship it. I'm (im)patiently waiting to get the tarballs out of the template repo and into GPR :)
from toolkit.
Yep, @jclem and I already had a discussion.
from toolkit.
Closing here since #21 has been merged. #23 is follow up work
from toolkit.
Related Issues (20)
- platform is undefined HOT 1
- cache.saveCache should raise an error on reserve failure, but doesn't HOT 1
- @actions/ccache causing 2min slowdown with Node 20 runtime
- actions/exec: Allow to kill the child process
- No Git tag created for `@actions/[email protected]`
- Introduce GITHUB_PROXY environment variable support in http-client
- core.addPath() can break $PATH in the openSUSE container HOT 1
- Access runner.name
- Numerical removal of trailing zeros breaks version number inputs not entered as strings HOT 1
- undici not in dependencies
- xx HOT 1
- [@actions/http-client] Security issue with dependency package `undici` (version `<= 5.28.2`)
- `core.summary.addCodeBlock()` sometimes doesn't render Markdown correctly HOT 3
- Avoid calling chmod in cpDirRecursive
- tool-cache downloadTool fails to download file saying "Invalid URL"
- let glob support curly braces like bash
- Huge untreeshakable size increase due to `undici`
- Leaked socket in cache/internal/cacheHttpClient
- scoop install 1password-cli
- Dependencies: Public docs no longer match some API methods HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from toolkit.