public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH v1 1/1] .devcontainer/devcontainer.json: Add devcontainer file
@ 2023-01-20 20:51 Michael Kubacki
  2023-01-20 21:22 ` [edk2-devel] " Rebecca Cran
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Kubacki @ 2023-01-20 20:51 UTC (permalink / raw)
  To: devel
  Cc: Andrew Fish, Chris Fernald, Leif Lindholm, Michael D Kinney,
	Oliver Steffen

From: Michael Kubacki <michael.kubacki@microsoft.com>

Tianocore maintains container images in the tianocore/containers repo
and stores container images within the GitHub container registry.

https://github.com/tianocore/containers

This change adds a devcontainer.json file to the edk2 repo. This
file's metadata and settings to configurate a development container
for a given well-defined tool and runtime stack.

More information about the devcontainer.json file is available here:
https://containers.dev/implementors/json_reference/

This file is recognized by popular tools such as GitHub Codespaces
and VS Code. In VS Code in particular, it makes it much easier for
a user to be aware a dev container exists (via UI notifications)
and to load the container.

A minimal number of VS Code extensions are specified that are useful
for edk2 development or to assist in complying with CI checks in
place in edk2.

Cc: Andrew Fish <afish@apple.com>
Cc: Chris Fernald <chris.fernald@outlook.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Oliver Steffen <osteffen@redhat.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
---
 .devcontainer/devcontainer.json | 16 ++++++++++++++++
 Maintainers.txt                 |  5 +++++
 2 files changed, 21 insertions(+)

diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
new file mode 100644
index 000000000000..592bb8cf6626
--- /dev/null
+++ b/.devcontainer/devcontainer.json
@@ -0,0 +1,16 @@
+{
+  "image": "ghcr.io/tianocore/containers/fedora-35-dev:latest",
+  "postCreateCommand": "git config --global --add safe.directory * && pip install --upgrade -r pip-requirements.txt",
+  "customizations": {
+    "vscode": {
+      "extensions": [
+        "DavidAnson.vscode-markdownlint",
+        "ms-azuretools.vscode-docker",
+        "ms-vscode-remote.remote-containers",
+        "ms-vscode.cpptools",
+        "walonli.edk2-vscode",
+        "zachflower.uncrustify"
+      ]
+    }
+  }
+}
diff --git a/Maintainers.txt b/Maintainers.txt
index 68f603b48398..4aa7973d5156 100644
--- a/Maintainers.txt
+++ b/Maintainers.txt
@@ -117,6 +117,11 @@ M: Michael Kubacki <mikuback@linux.microsoft.com> [makubacki]
 R: Michael D Kinney <michael.d.kinney@intel.com> [mdkinney]
 R: Liming Gao <gaoliming@byosoft.com.cn> [lgao4]
 
+.devcontainer/
+F: .devcontainer/
+M: Michael Kubacki <mikuback@linux.microsoft.com> [makubacki]
+R: Chris Fernald <chris.fernald@outlook.com> [cfernald]
+
 .github/
 F: .github/
 M: Sean Brogan <sean.brogan@microsoft.com> [spbrogan]
-- 
2.28.0.windows.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [edk2-devel] [PATCH v1 1/1] .devcontainer/devcontainer.json: Add devcontainer file
  2023-01-20 20:51 [PATCH v1 1/1] .devcontainer/devcontainer.json: Add devcontainer file Michael Kubacki
@ 2023-01-20 21:22 ` Rebecca Cran
  2023-01-20 21:57   ` Michael Kubacki
  2023-01-23  9:23   ` Oliver Steffen
  0 siblings, 2 replies; 5+ messages in thread
From: Rebecca Cran @ 2023-01-20 21:22 UTC (permalink / raw)
  To: devel, mikuback
  Cc: Andrew Fish, Chris Fernald, Leif Lindholm, Michael D Kinney,
	Oliver Steffen

[-- Attachment #1: Type: text/plain, Size: 2954 bytes --]

Related to this, I've been wondering if we might want to commit a .vscode directory with project configuration file(s)?

Also perhaps a .editorconfig file?

-- 

Rebecca Cran


On 1/20/23 13:51, Michael Kubacki wrote:
> From: Michael Kubacki<michael.kubacki@microsoft.com>
>
> Tianocore maintains container images in the tianocore/containers repo
> and stores container images within the GitHub container registry.
>
> https://github.com/tianocore/containers
>
> This change adds a devcontainer.json file to the edk2 repo. This
> file's metadata and settings to configurate a development container
> for a given well-defined tool and runtime stack.
>
> More information about the devcontainer.json file is available here:
> https://containers.dev/implementors/json_reference/
>
> This file is recognized by popular tools such as GitHub Codespaces
> and VS Code. In VS Code in particular, it makes it much easier for
> a user to be aware a dev container exists (via UI notifications)
> and to load the container.
>
> A minimal number of VS Code extensions are specified that are useful
> for edk2 development or to assist in complying with CI checks in
> place in edk2.
>
> Cc: Andrew Fish<afish@apple.com>
> Cc: Chris Fernald<chris.fernald@outlook.com>
> Cc: Leif Lindholm<quic_llindhol@quicinc.com>
> Cc: Michael D Kinney<michael.d.kinney@intel.com>
> Cc: Oliver Steffen<osteffen@redhat.com>
> Signed-off-by: Michael Kubacki<michael.kubacki@microsoft.com>
> ---
>   .devcontainer/devcontainer.json | 16 ++++++++++++++++
>   Maintainers.txt                 |  5 +++++
>   2 files changed, 21 insertions(+)
>
> diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
> new file mode 100644
> index 000000000000..592bb8cf6626
> --- /dev/null
> +++ b/.devcontainer/devcontainer.json
> @@ -0,0 +1,16 @@
> +{
> +  "image": "ghcr.io/tianocore/containers/fedora-35-dev:latest",
> +  "postCreateCommand": "git config --global --add safe.directory * && pip install --upgrade -r pip-requirements.txt",
> +  "customizations": {
> +    "vscode": {
> +      "extensions": [
> +        "DavidAnson.vscode-markdownlint",
> +        "ms-azuretools.vscode-docker",
> +        "ms-vscode-remote.remote-containers",
> +        "ms-vscode.cpptools",
> +        "walonli.edk2-vscode",
> +        "zachflower.uncrustify"
> +      ]
> +    }
> +  }
> +}
> diff --git a/Maintainers.txt b/Maintainers.txt
> index 68f603b48398..4aa7973d5156 100644
> --- a/Maintainers.txt
> +++ b/Maintainers.txt
> @@ -117,6 +117,11 @@ M: Michael Kubacki<mikuback@linux.microsoft.com>  [makubacki]
>   R: Michael D Kinney<michael.d.kinney@intel.com>  [mdkinney]
>   R: Liming Gao<gaoliming@byosoft.com.cn>  [lgao4]
>   
> +.devcontainer/
> +F: .devcontainer/
> +M: Michael Kubacki<mikuback@linux.microsoft.com>  [makubacki]
> +R: Chris Fernald<chris.fernald@outlook.com>  [cfernald]
> +
>   .github/
>   F: .github/
>   M: Sean Brogan<sean.brogan@microsoft.com>  [spbrogan]

[-- Attachment #2: Type: text/html, Size: 4517 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [edk2-devel] [PATCH v1 1/1] .devcontainer/devcontainer.json: Add devcontainer file
  2023-01-20 21:22 ` [edk2-devel] " Rebecca Cran
@ 2023-01-20 21:57   ` Michael Kubacki
  2023-01-23  9:23   ` Oliver Steffen
  1 sibling, 0 replies; 5+ messages in thread
From: Michael Kubacki @ 2023-01-20 21:57 UTC (permalink / raw)
  To: devel, rebecca
  Cc: Andrew Fish, Chris Fernald, Leif Lindholm, Michael D Kinney,
	Oliver Steffen

I think that's a good idea. edk2-pytool-extensions has a 
.vscode/settings.json file that has been useful for local python linting 
and testing that helps catch issues before CI.

For example:
https://github.com/tianocore/edk2-pytool-extensions/blob/master/.vscode/settings.json

On 1/20/2023 4:22 PM, Rebecca Cran wrote:
> Related to this, I've been wondering if we might want to commit a .vscode directory with project configuration file(s)?
> 
> Also perhaps a .editorconfig file?
> 
> -- 
> 
> Rebecca Cran
> 
> 
> On 1/20/23 13:51, Michael Kubacki wrote:
>> From: Michael Kubacki<michael.kubacki@microsoft.com>
>>
>> Tianocore maintains container images in the tianocore/containers repo
>> and stores container images within the GitHub container registry.
>>
>> https://github.com/tianocore/containers
>>
>> This change adds a devcontainer.json file to the edk2 repo. This
>> file's metadata and settings to configurate a development container
>> for a given well-defined tool and runtime stack.
>>
>> More information about the devcontainer.json file is available here:
>> https://containers.dev/implementors/json_reference/
>>
>> This file is recognized by popular tools such as GitHub Codespaces
>> and VS Code. In VS Code in particular, it makes it much easier for
>> a user to be aware a dev container exists (via UI notifications)
>> and to load the container.
>>
>> A minimal number of VS Code extensions are specified that are useful
>> for edk2 development or to assist in complying with CI checks in
>> place in edk2.
>>
>> Cc: Andrew Fish<afish@apple.com>
>> Cc: Chris Fernald<chris.fernald@outlook.com>
>> Cc: Leif Lindholm<quic_llindhol@quicinc.com>
>> Cc: Michael D Kinney<michael.d.kinney@intel.com>
>> Cc: Oliver Steffen<osteffen@redhat.com>
>> Signed-off-by: Michael Kubacki<michael.kubacki@microsoft.com>
>> ---
>>   .devcontainer/devcontainer.json | 16 ++++++++++++++++
>>   Maintainers.txt                 |  5 +++++
>>   2 files changed, 21 insertions(+)
>>
>> diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
>> new file mode 100644
>> index 000000000000..592bb8cf6626
>> --- /dev/null
>> +++ b/.devcontainer/devcontainer.json
>> @@ -0,0 +1,16 @@
>> +{
>> +  "image": "ghcr.io/tianocore/containers/fedora-35-dev:latest",
>> +  "postCreateCommand": "git config --global --add safe.directory * && pip install --upgrade -r pip-requirements.txt",
>> +  "customizations": {
>> +    "vscode": {
>> +      "extensions": [
>> +        "DavidAnson.vscode-markdownlint",
>> +        "ms-azuretools.vscode-docker",
>> +        "ms-vscode-remote.remote-containers",
>> +        "ms-vscode.cpptools",
>> +        "walonli.edk2-vscode",
>> +        "zachflower.uncrustify"
>> +      ]
>> +    }
>> +  }
>> +}
>> diff --git a/Maintainers.txt b/Maintainers.txt
>> index 68f603b48398..4aa7973d5156 100644
>> --- a/Maintainers.txt
>> +++ b/Maintainers.txt
>> @@ -117,6 +117,11 @@ M: Michael Kubacki<mikuback@linux.microsoft.com>  [makubacki]
>>   R: Michael D Kinney<michael.d.kinney@intel.com>  [mdkinney]
>>   R: Liming Gao<gaoliming@byosoft.com.cn>  [lgao4]
>>   
>> +.devcontainer/
>> +F: .devcontainer/
>> +M: Michael Kubacki<mikuback@linux.microsoft.com>  [makubacki]
>> +R: Chris Fernald<chris.fernald@outlook.com>  [cfernald]
>> +
>>   .github/
>>   F: .github/
>>   M: Sean Brogan<sean.brogan@microsoft.com>  [spbrogan]
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [edk2-devel] [PATCH v1 1/1] .devcontainer/devcontainer.json: Add devcontainer file
  2023-01-20 21:22 ` [edk2-devel] " Rebecca Cran
  2023-01-20 21:57   ` Michael Kubacki
@ 2023-01-23  9:23   ` Oliver Steffen
  2023-01-23 10:46     ` Ard Biesheuvel
  1 sibling, 1 reply; 5+ messages in thread
From: Oliver Steffen @ 2023-01-23  9:23 UTC (permalink / raw)
  To: Rebecca Cran, devel, mikuback
  Cc: Andrew Fish, Chris Fernald, Leif Lindholm, Michael D Kinney

Quoting Rebecca Cran (2023-01-20 22:22:55)
> Related to this, I've been wondering if we might want to commit a .vscode directory with project configuration file(s)?

As long as project settings for other IDEs (should
there be a reasonable user base) would be accepted in the future, why not?

>
> Also perhaps a .editorconfig file?
I like the idea, because it is understood by many IDEs and text editors.

>
> --
>
> Rebecca Cran
>
>
> On 1/20/23 13:51, Michael Kubacki wrote:
>
>     From: Michael Kubacki [1]<michael.kubacki@microsoft.com>
>
>     Tianocore maintains container images in the tianocore/containers repo
>     and stores container images within the GitHub container registry.
>
>     [2]https://github.com/tianocore/containers
>
>     This change adds a devcontainer.json file to the edk2 repo. This
>     file's metadata and settings to configurate a development container
>     for a given well-defined tool and runtime stack.
>
>     More information about the devcontainer.json file is available here:
>     [3]https://containers.dev/implementors/json_reference/
>
>     This file is recognized by popular tools such as GitHub Codespaces
>     and VS Code. In VS Code in particular, it makes it much easier for
>     a user to be aware a dev container exists (via UI notifications)
>     and to load the container.
>
>     A minimal number of VS Code extensions are specified that are useful
>     for edk2 development or to assist in complying with CI checks in
>     place in edk2.
>
>     Cc: Andrew Fish [4]<afish@apple.com>
>     Cc: Chris Fernald [5]<chris.fernald@outlook.com>
>     Cc: Leif Lindholm [6]<quic_llindhol@quicinc.com>
>     Cc: Michael D Kinney [7]<michael.d.kinney@intel.com>
>     Cc: Oliver Steffen [8]<osteffen@redhat.com>
>     Signed-off-by: Michael Kubacki [9]<michael.kubacki@microsoft.com>
>     ---
>      .devcontainer/devcontainer.json | 16 ++++++++++++++++
>      Maintainers.txt                 |  5 +++++
>      2 files changed, 21 insertions(+)
>
>     diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
>     new file mode 100644
>     index 000000000000..592bb8cf6626
>     --- /dev/null
>     +++ b/.devcontainer/devcontainer.json
>     @@ -0,0 +1,16 @@
>     +{
>     +  "image": "ghcr.io/tianocore/containers/fedora-35-dev:latest",
>     +  "postCreateCommand": "git config --global --add safe.directory * && pip install --upgrade -r pip-requirements.txt",
>     +  "customizations": {
>     +    "vscode": {
>     +      "extensions": [
>     +        "DavidAnson.vscode-markdownlint",
>     +        "ms-azuretools.vscode-docker",
>     +        "ms-vscode-remote.remote-containers",
>     +        "ms-vscode.cpptools",
>     +        "walonli.edk2-vscode",
>     +        "zachflower.uncrustify"
>     +      ]
>     +    }
>     +  }
>     +}
>     diff --git a/Maintainers.txt b/Maintainers.txt
>     index 68f603b48398..4aa7973d5156 100644
>     --- a/Maintainers.txt
>     +++ b/Maintainers.txt
>     @@ -117,6 +117,11 @@ M: Michael Kubacki [10]<mikuback@linux.microsoft.com> [makubacki]
>      R: Michael D Kinney [11]<michael.d.kinney@intel.com> [mdkinney]
>      R: Liming Gao [12]<gaoliming@byosoft.com.cn> [lgao4]
>
>     +.devcontainer/
>     +F: .devcontainer/
>     +M: Michael Kubacki [13]<mikuback@linux.microsoft.com> [makubacki]
>     +R: Chris Fernald [14]<chris.fernald@outlook.com> [cfernald]
>     +
>      .github/
>      F: .github/
>      M: Sean Brogan [15]<sean.brogan@microsoft.com> [spbrogan]
>
>
-Oliver


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [edk2-devel] [PATCH v1 1/1] .devcontainer/devcontainer.json: Add devcontainer file
  2023-01-23  9:23   ` Oliver Steffen
@ 2023-01-23 10:46     ` Ard Biesheuvel
  0 siblings, 0 replies; 5+ messages in thread
From: Ard Biesheuvel @ 2023-01-23 10:46 UTC (permalink / raw)
  To: devel, osteffen
  Cc: Rebecca Cran, mikuback, Andrew Fish, Chris Fernald, Leif Lindholm,
	Michael D Kinney

On Mon, 23 Jan 2023 at 10:23, Oliver Steffen <osteffen@redhat.com> wrote:
>
> Quoting Rebecca Cran (2023-01-20 22:22:55)
> > Related to this, I've been wondering if we might want to commit a .vscode directory with project configuration file(s)?
>
> As long as project settings for other IDEs (should
> there be a reasonable user base) would be accepted in the future, why not?
>
> >
> > Also perhaps a .editorconfig file?
> I like the idea, because it is understood by many IDEs and text editors.
>

Yes, please, this would be very useful.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-01-23 10:47 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-20 20:51 [PATCH v1 1/1] .devcontainer/devcontainer.json: Add devcontainer file Michael Kubacki
2023-01-20 21:22 ` [edk2-devel] " Rebecca Cran
2023-01-20 21:57   ` Michael Kubacki
2023-01-23  9:23   ` Oliver Steffen
2023-01-23 10:46     ` Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox