-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat/add fishtape option to fish feature #25
base: main
Are you sure you want to change the base?
feat/add fishtape option to fish feature #25
Conversation
test default devcontainer (without fishtape) and one with the option enable
29038ca
to
a2df261
Compare
Thank you for working on this. But I don't think we should add any more plugins here to be installed by fisher. (I don't think that's a sustainable approach) Users can install their favorite plug-ins in an instant by simply copying the |
@edouard-lopez hello, friend! 👋🏻
Maybe we can use an array for plugins to install instead? @eitsupi @edouard-lopez what do you think? |
I think adding an array would be a good idea. 👍 |
|
||
[fisher]: https://github.com/jorgebucaran/fisher | ||
[fishtape]: https://github.com/jorgebucaran/fishtape |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do not edit README.md
directly as it is automatically generated from devcontainer-feature.json
and NOTES.md
.
The only issue, there is no array type for options: https://containers.dev/implementors/features/#options-property 😓 |
A string type option that allows specifying plug-ins as a string separated by spaces or commas would be suitable. "plugins": "jorgebucaran/nvm.fish meaningful-ooo/sponge" |
@edouard-lopez is this PR time-sensitive? There is a proposal to add arrays to the spec: devcontainers/spec#57. I prefer to wait for it instead of hardcoding specific plugins. |
Array sounds good to me, it's not time-sensitive so we can wait or use @eitsupi workaround |
Good idea! Let's wait for a reply from the spec maintainers and decide if we want to use this workaround or wait for the proper array support. |
I updated the code to support a BTW, Are you aware of solution to test a single scenario with |
@andreiborisov, are you aware the linear links are not accessible to others? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for working on this.
I think the updates regarding the development environment, such as justfile commits, should be separated from the PR, but anyway some small comments regarding the Feature.
@@ -9,6 +9,11 @@ | |||
"type": "boolean", | |||
"default": true, | |||
"description": "Install Fisher plugin manager" | |||
}, | |||
"fisher_plugins": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should be camelCase.
"fisher_plugins": { | |
"fisherPlugins": { |
@@ -118,6 +119,24 @@ if [ "${FISHER}" = "true" ]; then | |||
fish -c "fisher -v" | |||
fi | |||
|
|||
# Install Fisher plugins | |||
if [ -n "${FISHER_PLUGINS}" ]; then |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fisher should be installed.
if [ -n "${FISHER_PLUGINS}" ]; then | |
if [ "${FISHER}" = "true" ] && [ -n "${FISHERPLUGINS}" ]; then |
@@ -1,6 +1,7 @@ | |||
#!/usr/bin/env bash | |||
|
|||
FISHER=${FISHER:-"true"} | |||
FISHER_PLUGINS=${FISHER_PLUGINS:-""} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FISHER_PLUGINS=${FISHER_PLUGINS:-""} | |
FISHERPLUGINS=${FISHERPLUGINS:-""} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I propose to go with the same approach maintainers currently use in https://github.com/devcontainers/features: devcontainers/spec#57 (comment)
I think it's a little bit more readable in options and they can effectively migrate us later when the proper arrays will become supported:
BASH_ARRAY=( ${COMMA_SEPARATED_OPTION//,/ } )
Vote with 👍 or 👎, please.
Running only scenario tests can be done as follows, but I believe that running only one scenario is not supported.
|
@edouard-lopez yes, I've wanted to invite you via Twitter (I've lost your Telegram contact 🥲), but it might be that your notifications for DMs are disabled. Ping me, please, on Telegram or Twitter 🤙🏻 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for working on this PR! 🙏🏻
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't have proper commit guidelines yet: https://linear.app/meaningful/issue/SYM-5/commit-style-guide, so I apologize for the chaos.
Although we might arrive at a style similar to what you've used in your commits, right now it's pure gitmoji without scope or type (the type is actually redundant since gitmoji already serves this purpose).
I would love to hear your thoughts on all this if you want to discuss it 🤙🏻
## Install | ||
|
||
```console | ||
yarn install |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We already use pnpm
as it's faster compared to yarn
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Contributing guidelines is a huge topic for Meaningful, so they're developed separately to be used organization-wide: https://linear.app/meaningful/issue/GRA-8/contributing-guidelines
The goal is to be as modular and reusable as we possibly can.
Pass a `feature` and a `base image`, _e.g._: | ||
|
||
```fish | ||
just test fish mcr.microsoft.com/devcontainers/base:debian |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is also https://github.com/go-task/task which looks good. Before committing to something, we should compare those (sorry for being pedantic, I'd like those decisions to be organization-wide so it requires a certain level of scrupulousness).
@@ -1,6 +1,7 @@ | |||
#!/usr/bin/env bash | |||
|
|||
FISHER=${FISHER:-"true"} | |||
FISHER_PLUGINS=${FISHER_PLUGINS:-""} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I propose to go with the same approach maintainers currently use in https://github.com/devcontainers/features: devcontainers/spec#57 (comment)
I think it's a little bit more readable in options and they can effectively migrate us later when the proper arrays will become supported:
BASH_ARRAY=( ${COMMA_SEPARATED_OPTION//,/ } )
Vote with 👍 or 👎, please.
@eitsupi thank you for helping with the review, I was quite slow this time 🐢 |
## Install | ||
|
||
```console | ||
yarn install |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Contributing guidelines is a huge topic for Meaningful, so they're developed separately to be used organization-wide: https://linear.app/meaningful/issue/GRA-8/contributing-guidelines
The goal is to be as modular and reusable as we possibly can.
|
Any update on this? |
Adding
fisher_plugins
to @guiyomh'sfish
feature.Usage
Options
fisher_plugins
fisher
""