You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This repository contains a set of tools for creating and checking the licensing and standard practices for open source projects.
9
+
This repository contains a set of tools for creating and checking the licensing and standard practices in open source projects.
6
10
7
11
In detail, it includes:
8
12
@@ -12,8 +16,7 @@ In detail, it includes:
12
16
13
17
## Table of Contents
14
18
15
-
*[Preface](#preface)
16
-
*[Supported licenses](#supported-licenses)
19
+
*[Supported licenses](#supported-licenses)
17
20
*[Usage](#usage)
18
21
*[Repository template](#repository-template)
19
22
*[Node.js CLI](#nodejs-cli)
@@ -26,14 +29,7 @@ In detail, it includes:
26
29
*[Next steps](#next-steps)
27
30
*[Configuring the repository](#configuring-the-repository)
28
31
29
-
## Preface
30
-
31
-
Before creating a new open source project, you should read the [Practical Guide to Open Source Software at Telefónica](https://telefonicacorp.sharepoint.com/:w:/s/PatentOffice.TMEHI/EV1Yvq2kUhhCgy5FG-lryaYBWLwIRewSMZXsbZJeQ5uhlg?e=Mdrdwh&wdLOR=cCBDCEA92-4CAC-CF4A-BF60-44FC3F909578).
32
-
33
-
> [!WARNING]
34
-
> The tools in this repository are not a replacement for that document, they are just a set of tools to help you follow the guidelines in that document.
35
-
36
-
### Supported licenses
32
+
## Supported licenses
37
33
38
34
This scaffold is able to create projects with the following licenses:
39
35
@@ -66,19 +62,16 @@ That's it! You can now start working on your project. Happy coding! 🚀
66
62
67
63
This repository also includes a Node.js CLI that can be used to __create or update__ an open source project with the standard files.
68
64
69
-
To use it, follow these steps:
70
-
71
-
1.__Login to NPM__: Make sure you are logged in to the _@tid-xcut_ NPM registry. Follow the [instructions in this link](https://confluence.tid.es/display/CTO/%5BCross%5D+NPM+Packages).
72
-
2.__Run the CLI__: Run the following command
65
+
To use it, run the following command:
73
66
74
67
```bash
75
-
npx @tid-xcut/opensource-scaffold create
68
+
npx @telefonica/opensource-scaffold create
76
69
```
77
70
78
71
The CLI will prompt you for the required inputs to create the project, and also will ask you for confirmation before overwriting existing files.
79
72
80
73
> [!TIP]
81
-
> You can also use arguments to provide the required information without being prompted. Read the [inputs](#inputs) section for more information, or run `npx @tid-xcut/opensource-scaffold create --help`.
74
+
> You can also use arguments to provide the required information without being prompted. Read the [inputs](#inputs) section for more information, or run `npx @telefonica/opensource-scaffold create --help`.
82
75
83
76
Once the files are created, you are ready to commit and push the changes to your repository. Happy coding! 🚀
84
77
@@ -87,7 +80,7 @@ Once the files are created, you are ready to commit and push the changes to your
87
80
88
81
### Github Action for checking the open source resources
89
82
90
-
This repository includes a Github Action that checks that the project contains the files that this scaffolding includes. It can be executed in PRs and pushes, ensuring that the project always remains compliant with the open source guidelines.
83
+
This repository includes a Github Action that checks that the project contains the files that this scaffolding includes. It can be executed in PRs and pushes, ensuring that the project always remains compliant with the scaffolding.
91
84
92
85
> [!TIP]
93
86
> This action is automatically added when using the scaffolding tools. So, usually you won't need to add it manually. But in case you need to do so, here you have an example:
@@ -110,7 +103,7 @@ jobs:
110
103
uses: actions/checkout@v4
111
104
112
105
- name: Run check
113
-
uses: Telefonica/opensource-scaffold@v1
106
+
uses: Telefonica/opensource-scaffold@v2
114
107
```
115
108
116
109
> [!TIP]
@@ -129,7 +122,7 @@ Example:
129
122
130
123
```yaml
131
124
- name: Check Open Source scaffold
132
-
uses: Telefonica/opensource-scaffold@v1
125
+
uses: Telefonica/opensource-scaffold@v2
133
126
with:
134
127
log: debug
135
128
ignore: "CHANGELOG.md;**/ISSUE_TEMPLATE/**"
@@ -210,13 +203,12 @@ This job uses the [Telefonica/check-spdx-headers action](https://github.com/Tele
210
203
211
204
## License Compliance check
212
205
213
-
We want to ensure that the software we build is in compliance with our [licensing guidance](https://telefonicacorp.sharepoint.com/:w:/s/PatentOffice.TMEHI/EV1Yvq2kUhhCgy5FG-lryaYBWLwIRewSMZXsbZJeQ5uhlg?e=Mdrdwh&wdLOR=cCBDCEA92-4CAC-CF4A-BF60-44FC3F909578).
214
-
215
-
This means that we are not incorporating third party software in the project under a license that is not compatible with the license selected for the overall project, or that is not compatible with the company's open source licensing guidelines.
206
+
You should ensure that you are not incorporating third party software in the project under a license that is not compatible with the license selected for the overall project, or that is not compatible with your company's open source licensing guidelines.
216
207
217
208
For such purpose, this scaffold includes a job in the "Open Source Checks" workflow. This job uses the [Telefonica/check-license-compliance github action](https://github.com/Telefonica/check-license-compliance). The configuration of the action is defined in the `.github/check-license-compliance.config.yml` file. It is filled automatically based on the license provided when creating the scaffold, but it can be also customized manually to fit better your project's needs.
218
209
219
-
Please review the [licensing guidance](https://telefonicacorp.sharepoint.com/:w:/s/PatentOffice.TMEHI/EV1Yvq2kUhhCgy5FG-lryaYBWLwIRewSMZXsbZJeQ5uhlg?e=Mdrdwh&wdLOR=cCBDCEA92-4CAC-CF4A-BF60-44FC3F909578) when configuring the license compliance check. In case of doubt, please contact the Intellectual Property team, to the email address indicated in such document.
210
+
> [!WARNING]
211
+
> The configuration of the allowed and forbidden licenses is created according to the Telefónica's open source guidelines, depending of the license you choose for your project. You should adapt it to your company's guidelines if they are different.
@@ -234,8 +226,8 @@ Once you have used the scaffolding tools to create the resources, you should fol
234
226
5. __Finish the README file__: The scaffold creates for you a `README.md` file with some basic information about the project and license, but you should fill it with the information about the project, how to install it, how to use it, etc. But remember to __always keep the "Contributing" and "License" sections__.
235
227
6. __Finish the CONTRIBUTING file__: You should do the same with the `CONTRIBUTING.md` file. You should __fill the "Getting Started" section__ with the steps that a contributor should follow to start contributing to the project, and __add as many sections as needed to explain the contribution process__. But you should __always keep the rest of sections__ about the licensing of new files, code of conduct and the CLA.
236
228
237
-
> [!IMPORTANT]
238
-
> Once the repository is ready, ask to your manager to contact with the legal department to review the project and approve the publication before making it public.
229
+
> [!WARNING]
230
+
> Before publishing the repository, you should ensure that your company's legal department has reviewed it.
239
231
240
232
## Configuring the repository
241
233
@@ -268,4 +260,4 @@ The main branch should be protected by requiring status checks to pass before me
268
260
### Final notes
269
261
270
262
> [!TIP]
271
-
> Remember also to provide a good description and topics for the repository in order to make it easier for others to find, use, and hopefully contribute to your project. 😉
263
+
> Remember also to provide a good description and topics for the repository in order to make it easier for others to find, use, and, hopefully, contribute to your project. 😉
0 commit comments