Compare commits
63 Commits
@verdaccio
...
v5.2.2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
46a4e8e2e0 | ||
|
|
0eab3e1746 | ||
|
|
4fc5b59eca | ||
|
|
bfa7b34994 | ||
|
|
089796ca47 | ||
|
|
ef2fbff755 | ||
|
|
c6458f4ad6 | ||
|
|
da5d7e96cb | ||
|
|
57bd5169f9 | ||
|
|
80dca8d96e | ||
|
|
247a317ca0 | ||
|
|
384b3e2ce5 | ||
|
|
69091d15fb | ||
|
|
6a78ae0045 | ||
|
|
5d4e3a65ba | ||
|
|
c81458bb0d | ||
|
|
9d7ddd9ecd | ||
|
|
b4a5ffe9a0 | ||
|
|
360bec9b53 | ||
|
|
b993344c40 | ||
|
|
2c590917b1 | ||
|
|
1308ab295d | ||
|
|
d63dcc02fa | ||
|
|
7d9fcfb5e3 | ||
|
|
2e995f5981 | ||
|
|
ecfc4c3304 | ||
|
|
a09a041754 | ||
|
|
bab7a7f6bc | ||
|
|
29240544b1 | ||
|
|
7180338c44 | ||
|
|
2bc590895c | ||
|
|
b8f711afab | ||
|
|
4fe8ddf7c7 | ||
|
|
b421ed87c4 | ||
|
|
da810f4a18 | ||
|
|
f272c11c48 | ||
|
|
558dd3f3c6 | ||
|
|
38ca095fb0 | ||
|
|
b5ee7039e3 | ||
|
|
f1cfae4d35 | ||
|
|
b2d6f3657a | ||
|
|
2d7d8143e9 | ||
|
|
8434cc550f | ||
|
|
1e4c900dcb | ||
|
|
4ed7286bcb | ||
|
|
251bd95373 | ||
|
|
6be108917e | ||
|
|
f168b2512e | ||
|
|
69d7df20d8 | ||
|
|
351ea89df6 | ||
|
|
78d04cf9f8 | ||
|
|
255650b91a | ||
|
|
01c5d2ca27 | ||
|
|
6fb388e366 | ||
|
|
ced47d56fc | ||
|
|
848c0ee499 | ||
|
|
d8b62cff53 | ||
|
|
825c1fc688 | ||
|
|
8074bae190 | ||
|
|
aae3e4356b | ||
|
|
6a1cdeaec4 | ||
|
|
782dd1ca93 | ||
|
|
e56fd19968 |
245
.all-contributorsrc
Normal file
245
.all-contributorsrc
Normal file
@@ -0,0 +1,245 @@
|
||||
{
|
||||
"projectName": "verdaccio",
|
||||
"projectOwner": "verdaccio",
|
||||
"repoType": "github",
|
||||
"repoHost": "https://github.com",
|
||||
"commitConvention": "none",
|
||||
"files": [
|
||||
"CONTRIBUTORS.md"
|
||||
],
|
||||
"contributors": [
|
||||
{
|
||||
"login": "juanpicado",
|
||||
"name": "Juan Picado",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/558752?v=4",
|
||||
"profile": "https://www.linkedin.com/in/jotadeveloper/",
|
||||
"contributions": [
|
||||
"doc",
|
||||
"code",
|
||||
"infra",
|
||||
"eventOrganizing",
|
||||
"blog",
|
||||
"maintenance"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "sergiohgz",
|
||||
"name": "Sergio Herrera",
|
||||
"avatar_url": "https://avatars3.githubusercontent.com/u/14012309?v=4",
|
||||
"profile": "https://github.com/sergiohgz",
|
||||
"contributions": [
|
||||
"infra",
|
||||
"maintenance"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "DanielRuf",
|
||||
"name": "Daniel Ruf",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/827205?v=4",
|
||||
"profile": "https://daniel-ruf.de/",
|
||||
"contributions": [
|
||||
"security",
|
||||
"infra",
|
||||
"maintenance"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "priscilawebdev",
|
||||
"name": "Priscila Oliveira",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/29228205?v=4",
|
||||
"profile": "https://priscilawebdev.github.io/priscilaoliveira/",
|
||||
"contributions": [
|
||||
"design",
|
||||
"code",
|
||||
"maintenance"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "ayusharma",
|
||||
"name": "Ayush Sharma",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/6918450?v=4",
|
||||
"profile": "http://ayusharma.github.io/",
|
||||
"contributions": [
|
||||
"infra",
|
||||
"code",
|
||||
"design"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "trentearl",
|
||||
"name": "Trent Earl",
|
||||
"avatar_url": "https://avatars2.githubusercontent.com/u/802857?v=4",
|
||||
"profile": "https://github.com/trentearl",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "jmwilkinson",
|
||||
"name": "jmwilkinson",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/17836030?v=4",
|
||||
"profile": "https://github.com/jmwilkinson",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "bufferoverflow",
|
||||
"name": "Roger Meier",
|
||||
"avatar_url": "https://avatars2.githubusercontent.com/u/378909?v=4",
|
||||
"profile": "https://github.com/bufferoverflow",
|
||||
"contributions": [
|
||||
"plugin"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "jamesgeorge007",
|
||||
"name": "James George",
|
||||
"avatar_url": "https://avatars2.githubusercontent.com/u/25279263?v=4",
|
||||
"profile": "https://ghuser.io/jamesgeorge007",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "AvailCat",
|
||||
"name": "AvailCat",
|
||||
"avatar_url": "https://avatars3.githubusercontent.com/u/19658647?v=4",
|
||||
"profile": "https://github.com/AvailCat",
|
||||
"contributions": [
|
||||
"code",
|
||||
"infra",
|
||||
"maintenance"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "lgaitan",
|
||||
"name": "Lucius Gaitán",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/5970350?v=4",
|
||||
"profile": "https://www.luciusgaitan.com/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "ramonornela",
|
||||
"name": "Ramon Henrique Ornelas",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/187946?v=4",
|
||||
"profile": "https://github.com/ramonornela",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "UnitedMarsupials-zz",
|
||||
"name": "UnitedMarsupials-zz",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/1486340?v=4",
|
||||
"profile": "https://people.freebsd.org/~mi/resume/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "ryan-codingintrigue",
|
||||
"name": "Ryan Graham",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/9048902?v=4",
|
||||
"profile": "http://www.codingintrigue.co.uk/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "coolsp",
|
||||
"name": "coolsp",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/1246647?v=4",
|
||||
"profile": "https://github.com/coolsp",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "ashishsurana",
|
||||
"name": "Ashish Surana",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/5610944?v=4",
|
||||
"profile": "http://ashishsurana.in/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "buffaybu",
|
||||
"name": "Wang Yifei",
|
||||
"avatar_url": "https://avatars3.githubusercontent.com/u/2025661?v=4",
|
||||
"profile": "https://github.com/buffaybu",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "lirantal",
|
||||
"name": "Liran Tal",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/316371?v=4",
|
||||
"profile": "https://twitter.com/liran_tal",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "brenordr",
|
||||
"name": "Breno Rodrigues",
|
||||
"avatar_url": "https://avatars2.githubusercontent.com/u/19731692?v=4",
|
||||
"profile": "https://github.com/brenordr",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "jachstet-sea",
|
||||
"name": "jachstet-sea",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/7993508?v=4",
|
||||
"profile": "https://github.com/jachstet-sea",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "Vrtak-CZ",
|
||||
"name": "Patrik Votoček",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/112567?v=4",
|
||||
"profile": "https://patrik.votocek.cz/",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "monkeywithacupcake",
|
||||
"name": "jess",
|
||||
"avatar_url": "https://avatars3.githubusercontent.com/u/7316730?v=4",
|
||||
"profile": "https://github.com/monkeywithacupcake",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "toolsofraj",
|
||||
"name": "toolsofraj",
|
||||
"avatar_url": "https://avatars0.githubusercontent.com/u/2507152?v=4",
|
||||
"profile": "https://github.com/toolsofraj",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "ddhp",
|
||||
"name": "Jian-Chen Chen (jesse)",
|
||||
"avatar_url": "https://avatars1.githubusercontent.com/u/1715380?v=4",
|
||||
"profile": "https://github.com/ddhp",
|
||||
"contributions": [
|
||||
"translation",
|
||||
"code"
|
||||
]
|
||||
}
|
||||
],
|
||||
"skipCi": true,
|
||||
"contributorsPerLine": 7
|
||||
}
|
||||
14
.babelrc
14
.babelrc
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"presets": [
|
||||
[
|
||||
"@babel/env",
|
||||
{
|
||||
"targets": {
|
||||
"node": 18
|
||||
}
|
||||
}
|
||||
],
|
||||
"@babel/typescript"
|
||||
],
|
||||
"ignore": ["**/*.d.ts"]
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
# Changesets
|
||||
|
||||
Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
|
||||
with multi-package repos, or single-package repos to help you version and publish your code. You can
|
||||
find the full documentation for it [in our repository](https://github.com/changesets/changesets)
|
||||
|
||||
We have a quick list of common questions to get you started engaging with this project in
|
||||
[our documentation](https://github.com/changesets/changesets/blob/master/docs/common-questions.md)
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/middleware': patch
|
||||
---
|
||||
|
||||
fix(middleware): pass version to allow check
|
||||
@@ -1,37 +0,0 @@
|
||||
---
|
||||
'generator-verdaccio-plugin': major
|
||||
'@verdaccio/logger-prettify': major
|
||||
'@verdaccio/logger-commons': major
|
||||
'@verdaccio/local-storage': major
|
||||
'verdaccio-auth-memory': major
|
||||
'@verdaccio/file-locking': major
|
||||
'verdaccio-htpasswd': major
|
||||
'@verdaccio/ui-theme': major
|
||||
'verdaccio-memory': major
|
||||
'@verdaccio/search-indexer': major
|
||||
'@verdaccio/server': major
|
||||
'@verdaccio/server-fastify': major
|
||||
'@verdaccio/logger': major
|
||||
'verdaccio-audit': major
|
||||
'@verdaccio/ui-components': major
|
||||
'@verdaccio/tarball': major
|
||||
'@verdaccio/eslint-config': major
|
||||
'@verdaccio/test-cli-commons': major
|
||||
'@verdaccio/types': major
|
||||
'@verdaccio/middleware': major
|
||||
'@verdaccio/cli-standalone': major
|
||||
'@verdaccio/core': major
|
||||
'@verdaccio/signature': major
|
||||
'verdaccio': major
|
||||
'@verdaccio/url': major
|
||||
'@verdaccio/node-api': major
|
||||
'@verdaccio/web': major
|
||||
'@verdaccio/loaders': major
|
||||
'@verdaccio/config': major
|
||||
'@verdaccio/search': major
|
||||
'@verdaccio/hooks': major
|
||||
'@verdaccio/proxy': major
|
||||
'@verdaccio/store': major
|
||||
---
|
||||
|
||||
chore: move v7 next to v8 next
|
||||
@@ -1,7 +0,0 @@
|
||||
---
|
||||
'@verdaccio/server': patch
|
||||
'@verdaccio/middleware': patch
|
||||
'@verdaccio/core': patch
|
||||
---
|
||||
|
||||
chore: request header constants
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/auth': major
|
||||
---
|
||||
|
||||
chore: move v7 next to v8 next
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/logger-commons': patch
|
||||
---
|
||||
|
||||
chore(logger): avoid message if level remains the same
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/types': patch
|
||||
'@verdaccio/proxy': patch
|
||||
---
|
||||
|
||||
chore: move agent_options to config
|
||||
@@ -1,34 +0,0 @@
|
||||
{
|
||||
"$schema": "https://unpkg.com/@changesets/config@1.3.0/schema.json",
|
||||
"changelog": "@changesets/cli/changelog",
|
||||
"commit": false,
|
||||
"fixed": [
|
||||
[
|
||||
"verdaccio",
|
||||
"@verdaccio/cli",
|
||||
"@verdaccio/core",
|
||||
"@verdaccio/config",
|
||||
"@verdaccio/node-api",
|
||||
"@verdaccio/ui-theme"
|
||||
]
|
||||
],
|
||||
"ignoredPackages": [
|
||||
"@verdaccio/test-cli-commons",
|
||||
"@verdaccio/e2e-cli-npm6",
|
||||
"@verdaccio/e2e-cli-npm7",
|
||||
"@verdaccio/e2e-cli-npm8",
|
||||
"@verdaccio/e2e-cli-npm9",
|
||||
"@verdaccio/e2e-cli-npm10",
|
||||
"@verdaccio/e2e-cli-npm-common",
|
||||
"@verdaccio/e2e-cli-yarn1",
|
||||
"@verdaccio/e2e-cli-yarn2",
|
||||
"@verdaccio/e2e-cli-yarn3",
|
||||
"@verdaccio/e2e-cli-yarn4",
|
||||
"@verdaccio/e2e-cli-pnpm8",
|
||||
"@verdaccio/e2e-cli-pnpm9",
|
||||
"@verdaccio/e2e-cli-pnpm10"
|
||||
],
|
||||
"access": "public",
|
||||
"baseBranch": "master",
|
||||
"updateInternalDependencies": "patch"
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/loaders': patch
|
||||
'@verdaccio/config': patch
|
||||
---
|
||||
|
||||
chore(loader): fix types for plugin options
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/core': patch
|
||||
---
|
||||
|
||||
chore(core): typing, naming, and docs of parameters
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/web': patch
|
||||
---
|
||||
|
||||
chore(web): fix syntax of test files
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/types': patch
|
||||
---
|
||||
|
||||
chore: add `error` to log level enum
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/middleware': patch
|
||||
---
|
||||
|
||||
fix(middleware): allow content-type with charset
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/local-storage': patch
|
||||
'@verdaccio/store': patch
|
||||
---
|
||||
|
||||
fix: code scan issues
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
'@verdaccio/server': patch
|
||||
'@verdaccio/store': patch
|
||||
'@verdaccio/auth': patch
|
||||
'@verdaccio/web': patch
|
||||
---
|
||||
|
||||
chore: add info to log when audit, htpasswd, theme are used
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/auth': patch
|
||||
'@verdaccio/api': patch
|
||||
---
|
||||
|
||||
fix: E409 username is already registered (adduser)
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/types': patch
|
||||
'@verdaccio/config': patch
|
||||
---
|
||||
|
||||
chore: fix typedocs warnings
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/store': patch
|
||||
---
|
||||
|
||||
chore: add info to log when local storage is used
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'verdaccio-htpasswd': patch
|
||||
---
|
||||
|
||||
chore: add debug code to htpasswd package
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
'@verdaccio/types': patch
|
||||
'@verdaccio/core': patch
|
||||
'verdaccio': patch
|
||||
'@verdaccio/store': patch
|
||||
'@verdaccio/api': patch
|
||||
---
|
||||
|
||||
fix: unpublish a package on storage package
|
||||
@@ -1,37 +0,0 @@
|
||||
---
|
||||
'@verdaccio/api': minor
|
||||
'@verdaccio/auth': minor
|
||||
'@verdaccio/cli': minor
|
||||
'@verdaccio/config': minor
|
||||
'@verdaccio/core': minor
|
||||
'@verdaccio/file-locking': minor
|
||||
'@verdaccio/tarball': minor
|
||||
'@verdaccio/types': minor
|
||||
'@verdaccio/url': minor
|
||||
'@verdaccio/hooks': minor
|
||||
'@verdaccio/loaders': minor
|
||||
'@verdaccio/logger': minor
|
||||
'@verdaccio/logger-commons': minor
|
||||
'@verdaccio/logger-prettify': minor
|
||||
'@verdaccio/middleware': minor
|
||||
'@verdaccio/node-api': minor
|
||||
'verdaccio-audit': minor
|
||||
'verdaccio-auth-memory': minor
|
||||
'verdaccio-htpasswd': minor
|
||||
'@verdaccio/local-storage': minor
|
||||
'verdaccio-memory': minor
|
||||
'@verdaccio/ui-theme': minor
|
||||
'@verdaccio/proxy': minor
|
||||
'@verdaccio/search': minor
|
||||
'@verdaccio/search-indexer': minor
|
||||
'@verdaccio/server': minor
|
||||
'@verdaccio/signature': minor
|
||||
'@verdaccio/store': minor
|
||||
'generator-verdaccio-plugin': minor
|
||||
'@verdaccio/ui-components': minor
|
||||
'@verdaccio/utils': minor
|
||||
'verdaccio': minor
|
||||
'@verdaccio/web': minor
|
||||
---
|
||||
|
||||
feat: update logger pino to latest
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/ui-theme': patch
|
||||
'@verdaccio/ui-components': patch
|
||||
---
|
||||
|
||||
chore(ui): vitest follow-ups
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
'@verdaccio/api': patch
|
||||
'@verdaccio/core': patch
|
||||
'@verdaccio/middleware': patch
|
||||
'@verdaccio/proxy': patch
|
||||
---
|
||||
|
||||
fix(middleware): error 404 when getting scoped tarballs
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/middleware': patch
|
||||
---
|
||||
|
||||
fix(middleware): encoding of scope package name
|
||||
@@ -1,99 +0,0 @@
|
||||
{
|
||||
"mode": "pre",
|
||||
"tag": "next-8",
|
||||
"initialVersions": {
|
||||
"@verdaccio/test-cli-commons": "1.1.0",
|
||||
"@verdaccio/e2e-cli-npm9": "1.0.1",
|
||||
"@verdaccio/e2e-cli-npm6": "1.0.1",
|
||||
"@verdaccio/e2e-cli-npm7": "1.0.1",
|
||||
"@verdaccio/e2e-cli-npm8": "1.0.1",
|
||||
"@verdaccio/e2e-cli-pnpm8": "1.0.1",
|
||||
"@verdaccio/e2e-cli-pnpm9": "1.0.1",
|
||||
"@verdaccio/e2e-cli-yarn1": "1.0.1",
|
||||
"@verdaccio/e2e-cli-yarn2": "1.0.1",
|
||||
"@verdaccio/e2e-cli-yarn3": "1.0.1",
|
||||
"@verdaccio/e2e-cli-yarn4": "1.0.1",
|
||||
"@verdaccio/e2e-ui": "2.0.0",
|
||||
"@verdaccio/api": "7.0.0",
|
||||
"@verdaccio/auth": "7.0.0",
|
||||
"@verdaccio/cli": "7.0.0",
|
||||
"@verdaccio/config": "7.0.0",
|
||||
"@verdaccio/core": "7.0.0",
|
||||
"@verdaccio/file-locking": "12.0.0",
|
||||
"@verdaccio/tarball": "12.0.0",
|
||||
"@verdaccio/types": "12.0.0",
|
||||
"@verdaccio/url": "12.0.0",
|
||||
"@verdaccio/hooks": "7.0.0",
|
||||
"@verdaccio/loaders": "7.0.0",
|
||||
"@verdaccio/logger": "7.0.0",
|
||||
"@verdaccio/logger-commons": "7.0.0",
|
||||
"@verdaccio/logger-prettify": "7.0.0",
|
||||
"@verdaccio/middleware": "7.0.0",
|
||||
"@verdaccio/node-api": "7.0.0",
|
||||
"verdaccio-audit": "12.0.0",
|
||||
"verdaccio-auth-memory": "12.0.0",
|
||||
"verdaccio-htpasswd": "12.0.0",
|
||||
"@verdaccio/local-storage": "12.0.0",
|
||||
"verdaccio-memory": "12.0.0",
|
||||
"@verdaccio/ui-theme": "7.0.0",
|
||||
"@verdaccio/proxy": "7.0.0",
|
||||
"@verdaccio/search": "7.0.0",
|
||||
"@verdaccio/search-indexer": "7.0.0",
|
||||
"@verdaccio/server": "7.0.0",
|
||||
"@verdaccio/server-fastify": "7.0.0",
|
||||
"@verdaccio/signature": "7.0.0",
|
||||
"@verdaccio/cli-standalone": "7.0.0",
|
||||
"@verdaccio/store": "7.0.0",
|
||||
"docusaurus-plugin-contributors": "2.0.0",
|
||||
"@verdaccio/eslint-config": "3.0.0",
|
||||
"generator-verdaccio-plugin": "5.0.0",
|
||||
"@verdaccio/test-helper": "3.0.0",
|
||||
"@verdaccio/local-publish": "0.0.2",
|
||||
"@verdaccio/crowdin-translations": "1.0.0",
|
||||
"customprefix-auth": "2.0.0",
|
||||
"@verdaccio/ui-components": "3.0.0",
|
||||
"@verdaccio/utils": "7.0.0",
|
||||
"verdaccio": "7.0.0",
|
||||
"@verdaccio/web": "7.0.0",
|
||||
"@verdaccio/website": "6.0.0",
|
||||
"@verdaccio/e2e-cli-npm-common": "1.0.0",
|
||||
"@verdaccio/e2e-cli-pnpm-common": "1.0.2-next-8.0",
|
||||
"@verdaccio/e2e-cli-pnpm10": "1.0.0"
|
||||
},
|
||||
"changesets": [
|
||||
"angry-doors-tan",
|
||||
"beige-lions-type",
|
||||
"blue-paws-cheer",
|
||||
"chatty-apricots-report",
|
||||
"clean-beds-wash",
|
||||
"clever-bees-happen",
|
||||
"cool-seals-watch",
|
||||
"curvy-rockets-camp",
|
||||
"cyan-snakes-kiss",
|
||||
"early-eyes-float",
|
||||
"fifty-falcons-design",
|
||||
"gentle-stingrays-repeat",
|
||||
"gold-squids-watch",
|
||||
"green-eagles-boil",
|
||||
"healthy-ducks-drive",
|
||||
"healthy-zoos-lie",
|
||||
"hip-eggs-serve",
|
||||
"hot-crews-live",
|
||||
"long-eyes-drum",
|
||||
"long-singers-drive",
|
||||
"lucky-crabs-enjoy",
|
||||
"nine-countries-remember",
|
||||
"quick-seas-deny",
|
||||
"rotten-melons-notice",
|
||||
"rude-birds-design",
|
||||
"rude-socks-walk",
|
||||
"serious-apes-rule",
|
||||
"silent-bags-listen",
|
||||
"stupid-camels-build",
|
||||
"sweet-crabs-deliver",
|
||||
"thirty-comics-trade",
|
||||
"tricky-impalas-shake",
|
||||
"violet-boxes-float",
|
||||
"weak-cherries-serve"
|
||||
]
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/loaders': minor
|
||||
---
|
||||
|
||||
chore: remove logger as dependency
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/middleware': patch
|
||||
---
|
||||
|
||||
chore(middleware): fix syntax of test files
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'verdaccio': patch
|
||||
---
|
||||
|
||||
chore: encode parts of URL
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/types': patch
|
||||
'@verdaccio/store': patch
|
||||
---
|
||||
|
||||
feat: keep_readmes option when publishing packages
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/ui-components': patch
|
||||
---
|
||||
|
||||
chore(ui): replace react-json-view
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
'@verdaccio/logger-commons': patch
|
||||
'@verdaccio/local-storage': patch
|
||||
'@verdaccio/test-helper': patch
|
||||
'@verdaccio/core': patch
|
||||
'verdaccio': patch
|
||||
---
|
||||
|
||||
chore(tests): temp folder naming
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/api': patch
|
||||
---
|
||||
|
||||
chore(api): fix void return for some tests
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/ui-components': patch
|
||||
---
|
||||
|
||||
chore(ui): typing for Theme
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
'@verdaccio/local-storage': patch
|
||||
---
|
||||
|
||||
chore: local storage debug messages
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/local-storage': patch
|
||||
'@verdaccio/store': patch
|
||||
---
|
||||
|
||||
chore: tweak error logging messages
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
'@verdaccio/store': patch
|
||||
'@verdaccio/tarball': patch
|
||||
---
|
||||
|
||||
fix(api): add logging when requesting tarball
|
||||
@@ -1,18 +0,0 @@
|
||||
---
|
||||
'@verdaccio/logger-commons': patch
|
||||
'@verdaccio/file-locking': patch
|
||||
'@verdaccio/ui-theme': patch
|
||||
'@verdaccio/search-indexer': patch
|
||||
'@verdaccio/server': patch
|
||||
'@verdaccio/server-fastify': patch
|
||||
'@verdaccio/test-helper': patch
|
||||
'@verdaccio/middleware': patch
|
||||
'verdaccio': patch
|
||||
'@verdaccio/node-api': patch
|
||||
'@verdaccio/auth': patch
|
||||
'@verdaccio/api': patch
|
||||
'@verdaccio/cli': patch
|
||||
'@verdaccio/web': patch
|
||||
---
|
||||
|
||||
chore: auth package requires logger as parameter
|
||||
@@ -8,21 +8,22 @@
|
||||
.*
|
||||
# you can add exceptions like in .gitignore to maintain a whitelist:
|
||||
# e.g.
|
||||
!.babelrc
|
||||
!.eslintrc
|
||||
!.prettierrc.json
|
||||
!.prettierignore
|
||||
!babel.config.js
|
||||
!eslintrc.js
|
||||
!.prettierrc
|
||||
!.eslintignore
|
||||
!.stylelintrc
|
||||
!.jest.config.js
|
||||
!.jestEnvironment.js
|
||||
!.yarnrc.yml
|
||||
!.yarn/releases/yarn-*.cjs
|
||||
!.yarn/plugins/*
|
||||
!.pnp.js
|
||||
|
||||
# do not copy over node_modules we will run `pnpm install` anyway
|
||||
# just in case, yarn 2 pnp is enabled
|
||||
node_modules
|
||||
website
|
||||
jest
|
||||
docs
|
||||
contrib
|
||||
docker-examples
|
||||
systemd
|
||||
.husky/
|
||||
.git/
|
||||
|
||||
# output from test runs and similar things
|
||||
*.log
|
||||
|
||||
@@ -7,7 +7,6 @@ end_of_line = lf
|
||||
insert_final_newline = true
|
||||
|
||||
# 2 space indentation
|
||||
[{.,}*.{ts,tsx,js,jsx,yml,yaml}]
|
||||
[{.,}*.{js,jsx,yml,yaml}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
quote_type = single
|
||||
|
||||
@@ -1,20 +1,23 @@
|
||||
**/fixtures/**
|
||||
**/mock/store/**
|
||||
**/partials/**
|
||||
**/types/custom.d.ts
|
||||
build/
|
||||
node_modules
|
||||
coverage/
|
||||
node_modules/
|
||||
static/
|
||||
website/
|
||||
wiki/
|
||||
dist/
|
||||
docs/
|
||||
test/functional/store/*
|
||||
docker-examples/**/lib/**/*.js
|
||||
test/cli/e2e-yarn4/bin/yarn-4.0.0-rc.14.cjs
|
||||
yarn.js
|
||||
# storybook
|
||||
packages/ui-components/storybook-static
|
||||
dist.js
|
||||
bundle.js
|
||||
static/
|
||||
flow-typed/
|
||||
website/
|
||||
build/
|
||||
*.md
|
||||
*.lock
|
||||
*.yaml
|
||||
Dockerfile
|
||||
*.rpi
|
||||
*.html
|
||||
*.scss
|
||||
*.png
|
||||
*.jpg
|
||||
*.sh
|
||||
*.ico
|
||||
test/unit/partials/
|
||||
types/custom.d.ts
|
||||
docker-examples/
|
||||
LICENSE
|
||||
.pnp.js
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
module.exports = {
|
||||
extends: ['@verdaccio/eslint-config'],
|
||||
};
|
||||
199
.gitattributes
vendored
199
.gitattributes
vendored
@@ -1,199 +0,0 @@
|
||||
## GITATTRIBUTES FOR WEB PROJECTS
|
||||
#
|
||||
# These settings are for any web project.
|
||||
#
|
||||
# Details per file setting:
|
||||
# text These files should be normalized (i.e. convert CRLF to LF).
|
||||
# binary These files are binary and should be left untouched.
|
||||
#
|
||||
# Note that binary is a macro for -text -diff.
|
||||
######################################################################
|
||||
|
||||
# Auto detect
|
||||
## Handle line endings automatically for files detected as
|
||||
## text and leave all files detected as binary untouched.
|
||||
## This will handle all files NOT defined below.
|
||||
* text=lf
|
||||
|
||||
# Source code
|
||||
*.bash text eol=lf
|
||||
*.bat text eol=crlf
|
||||
*.cmd text eol=crlf
|
||||
*.coffee text eol=lf
|
||||
*.css text eol=lf
|
||||
*.htm text diff=html
|
||||
*.html text diff=html
|
||||
*.inc text eol=lf
|
||||
*.ini text eol=lf
|
||||
*.js text eol=lf
|
||||
*.json text eol=lf
|
||||
*.jsx text eol=lf
|
||||
*.less text eol=lf
|
||||
*.ls text eol=lf
|
||||
*.map text -diff
|
||||
*.od text eol=lf
|
||||
*.onlydata text eol=lf
|
||||
*.php text diff=php
|
||||
*.pl text eol=lf
|
||||
*.ps1 text eol=crlf
|
||||
*.py text diff=python
|
||||
*.rb text diff=ruby
|
||||
*.sass text eol=lf
|
||||
*.scm text eol=lf
|
||||
*.scss text diff=css
|
||||
*.sh text eol=lf
|
||||
*.sql text eol=lf
|
||||
*.styl text eol=lf
|
||||
*.tag text eol=lf
|
||||
*.ts text eol=lf
|
||||
*.tsx text eol=lf
|
||||
*.xml text eol=lf
|
||||
*.xhtml text diff=html
|
||||
|
||||
# Docker
|
||||
Dockerfile text eol=lf
|
||||
|
||||
# Documentation
|
||||
*.ipynb text eol=lf
|
||||
*.markdown text eol=lf
|
||||
*.md text eol=lf
|
||||
*.mdwn text eol=lf
|
||||
*.mdown text eol=lf
|
||||
*.mkd text eol=lf
|
||||
*.mkdn text eol=lf
|
||||
*.mdtxt text eol=lf
|
||||
*.mdtext text eol=lf
|
||||
*.txt text eol=lf
|
||||
AUTHORS text eol=lf
|
||||
CHANGELOG text eol=lf
|
||||
CHANGES text eol=lf
|
||||
CONTRIBUTING text eol=lf
|
||||
COPYING text eol=lf
|
||||
copyright text eol=lf
|
||||
*COPYRIGHT* text eol=lf
|
||||
INSTALL text eol=lf
|
||||
license text eol=lf
|
||||
LICENSE text eol=lf
|
||||
NEWS text eol=lf
|
||||
readme text eol=lf
|
||||
*README* text eol=lf
|
||||
TODO text eol=lf
|
||||
|
||||
# Templates
|
||||
*.dot text eol=lf
|
||||
*.ejs text eol=lf
|
||||
*.haml text eol=lf
|
||||
*.handlebars text eol=lf
|
||||
*.hbs text eol=lf
|
||||
*.hbt text eol=lf
|
||||
*.jade text eol=lf
|
||||
*.latte text eol=lf
|
||||
*.mustache text eol=lf
|
||||
*.njk text eol=lf
|
||||
*.phtml text eol=lf
|
||||
*.tmpl text eol=lf
|
||||
*.tpl text eol=lf
|
||||
*.twig text eol=lf
|
||||
*.vue text eol=lf
|
||||
|
||||
# Configs
|
||||
*.cnf text eol=lf
|
||||
*.conf text eol=lf
|
||||
*.config text eol=lf
|
||||
.editorconfig text eol=lf
|
||||
.env text eol=lf
|
||||
.gitattributes text eol=lf
|
||||
.gitconfig text eol=lf
|
||||
.htaccess text eol=lf
|
||||
*.lock text -diff
|
||||
package-lock.json text -diff
|
||||
*.toml text eol=lf
|
||||
*.yaml text eol=lf
|
||||
*.yml text eol=lf
|
||||
browserslist text eol=lf
|
||||
Makefile text eol=lf
|
||||
makefile text eol=lf
|
||||
|
||||
# Heroku
|
||||
Procfile text eol=lf
|
||||
|
||||
# Graphics
|
||||
*.ai binary
|
||||
*.bmp binary
|
||||
*.eps binary
|
||||
*.gif binary
|
||||
*.gifv binary
|
||||
*.ico binary
|
||||
*.jng binary
|
||||
*.jp2 binary
|
||||
*.jpg binary
|
||||
*.jpeg binary
|
||||
*.jpx binary
|
||||
*.jxr binary
|
||||
*.pdf binary
|
||||
*.png binary
|
||||
*.psb binary
|
||||
*.psd binary
|
||||
# SVG treated as an asset (binary) by default.
|
||||
*.svg text eol=lf
|
||||
# If you want to treat it as binary,
|
||||
# use the following line instead.
|
||||
# *.svg binary
|
||||
*.svgz binary
|
||||
*.tif binary
|
||||
*.tiff binary
|
||||
*.wbmp binary
|
||||
*.webp binary
|
||||
|
||||
# Audio
|
||||
*.kar binary
|
||||
*.m4a binary
|
||||
*.mid binary
|
||||
*.midi binary
|
||||
*.mp3 binary
|
||||
*.ogg binary
|
||||
*.ra binary
|
||||
|
||||
# Video
|
||||
*.3gpp binary
|
||||
*.3gp binary
|
||||
*.as binary
|
||||
*.asf binary
|
||||
*.asx binary
|
||||
*.fla binary
|
||||
*.flv binary
|
||||
*.m4v binary
|
||||
*.mng binary
|
||||
*.mov binary
|
||||
*.mp4 binary
|
||||
*.mpeg binary
|
||||
*.mpg binary
|
||||
*.ogv binary
|
||||
*.swc binary
|
||||
*.swf binary
|
||||
*.webm binary
|
||||
|
||||
# Archives
|
||||
*.7z binary
|
||||
*.gz binary
|
||||
*.jar binary
|
||||
*.rar binary
|
||||
*.tar binary
|
||||
*.zip binary
|
||||
|
||||
# Fonts
|
||||
*.ttf binary
|
||||
*.eot binary
|
||||
*.otf binary
|
||||
*.woff binary
|
||||
*.woff2 binary
|
||||
|
||||
# Executables
|
||||
*.exe binary
|
||||
*.pyc binary
|
||||
|
||||
# RC files (like .babelrc or .eslintrc)
|
||||
*.*rc text eol=lf
|
||||
|
||||
# Ignore files (like .npmignore or .gitignore)
|
||||
*.*ignore text eol=lf
|
||||
40
.github/ISSUE_TEMPLATE/bug_report.md
vendored
40
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -6,31 +6,10 @@ title: ''
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
<!-- PLEASE READ THIS:
|
||||
- If you are not sure is a bug, OPEN a DISCUSSION, if is a legitimate bug, is easy to create a bug from a discussion.
|
||||
- Empty reports won't be considered and eventually be closed by a bot.
|
||||
- Include debugging notes will help to fix it faster, HOW TO: https://github.com/verdaccio/verdaccio/wiki/Debugging-Verdaccio
|
||||
- If you remove this template, ticket will be closed immediately.
|
||||
- No English perfect is required, use public translators if is need it, we will do our best to help you.
|
||||
- Extra bonus: The most complete this report is delivered, the faster you will get a response.
|
||||
- Extra bonus: include screenshots, logs (remove sensitive data).
|
||||
- If you are willing to fix it, there is a checkbox at the bottom.
|
||||
-->
|
||||
|
||||
**Your Environment**
|
||||
<!-- bug below the version 5.x will be closed, see SECURITY.md for more details -->
|
||||
* **verdaccio version**: 5.x.x
|
||||
* **node version** [12.x.x, 14.x.x]:
|
||||
* **package manager**: [npm@7, pnpm@6, yarn@2]
|
||||
* **os**: [mac, windows@10, linux]
|
||||
* **platform**: [npm, docker, helm, other]
|
||||
|
||||
**Describe the bug**
|
||||
|
||||
<!-- A clear and concise description of what the bug is. -->
|
||||
|
||||
**To Reproduce**
|
||||
|
||||
<!-- IMPORTANT:
|
||||
- How to reproduce the issue
|
||||
- Steps to reproduce the issue
|
||||
@@ -39,11 +18,9 @@ Be aware, the lack of reproducible steps the issue might cause your ticket to be
|
||||
-->
|
||||
|
||||
**Expected behavior**
|
||||
|
||||
<!-- A clear and concise description of what you expected to happen. -->
|
||||
|
||||
**Screenshots, server logs, package manager log**
|
||||
|
||||
**Screenshots**
|
||||
<!-- If applicable, add screenshots to help explain your problem. -->
|
||||
|
||||
**Configuration File (cat ~/.config/verdaccio/config.yaml)**
|
||||
@@ -51,21 +28,16 @@ Be aware, the lack of reproducible steps the issue might cause your ticket to be
|
||||
<!-- Please be careful do not leak any sensitive information, remove tokens -->
|
||||
|
||||
**Environment information**
|
||||
|
||||
<!-- Please paste the results of running `verdaccio --info` -->
|
||||
|
||||
**Debugging output**
|
||||
|
||||
- `$ NODE_DEBUG=request verdaccio` display request calls (verdaccio <--> uplinks)
|
||||
- `$ DEBUG=verdaccio* verdaccio` enable extreme verdaccio debug mode (verdaccio api)
|
||||
- `$ npm -ddd` prints:
|
||||
- `$ npm config get registry` prints:
|
||||
|
||||
**Contribute to Verdaccio**
|
||||
|
||||
- [ ] I'm willing to fix this bug 🥇
|
||||
- `$ NODE_DEBUG=request verdaccio` display request calls (verdaccio <--> uplinks)
|
||||
- `$ DEBUG=express:* verdaccio` enable extreme verdaccio debug mode (verdaccio api)
|
||||
- `$ npm -ddd` prints:
|
||||
- `$ npm config get registry` prints:
|
||||
|
||||
<!--
|
||||
|
||||
IMPORTANT: please do not attach external files, all content should be visible from any device.
|
||||
-->
|
||||
|
||||
|
||||
7
.github/ISSUE_TEMPLATE/config.yml
vendored
7
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -7,5 +7,8 @@ contact_links:
|
||||
url: https://github.com/verdaccio/verdaccio/security/policy
|
||||
about: I want to report a security vulnerability
|
||||
- name: Chat 🏘
|
||||
url: https://discord.gg/7qWJxBf
|
||||
about: Quick question? Try out Discord chat, you can get faster feedback
|
||||
url: http://chat.verdaccio.org
|
||||
about: For a quick question you should do it through our community chat
|
||||
- name: User Interface Report 👩🏼🎨👨🏼🎨
|
||||
url: https://github.com/verdaccio/ui/issues/new/choose
|
||||
about: Any report related with the User Interface should be posted in another repository
|
||||
|
||||
13
.github/ISSUE_TEMPLATE/feature.md
vendored
13
.github/ISSUE_TEMPLATE/feature.md
vendored
@@ -1,24 +1,21 @@
|
||||
---
|
||||
name: 'Feature Request 🔮'
|
||||
name: "Feature Request \U0001F52E"
|
||||
about: You want a feature request.
|
||||
title: ''
|
||||
labels: 'topic: feature request'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
IMPORTANT: If you don't have an action plan, please consider create a DISCUSSION (idea) instead for an open a feature request issue.
|
||||
|
||||
https://github.com/verdaccio/verdaccio/discussions/new
|
||||
|
||||
Verdaccio is a project addressed for voluntaries, if you appreciate this project consider to donate.
|
||||
1$/5$ or custom amount single contribution
|
||||
|
||||
or monthly
|
||||
1$/month - minimal contribution
|
||||
5$/month - nice contribution
|
||||
500$ - help to promote this project, marketing, stickers.
|
||||
2000$/year - sponsor status, your company logo will be in our readme, meetups talks and your request will have high priority
|
||||
|
||||
https://github.com/sponsors/verdaccio
|
||||
https://opencollective.com/verdaccio
|
||||
|
||||
As reminder, the Open Source must be sustainable.
|
||||
-->
|
||||
|
||||
22
.github/actions/build-app/action.yml
vendored
22
.github/actions/build-app/action.yml
vendored
@@ -1,22 +0,0 @@
|
||||
name: 'Build app'
|
||||
description: 'build verdaccio application'
|
||||
|
||||
inputs:
|
||||
registry-url:
|
||||
description: 'Registry URL for pnpm'
|
||||
required: false
|
||||
default: 'http://localhost:4873'
|
||||
node-version:
|
||||
description: 'Node.js version to use'
|
||||
required: true
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Install dependencies with a custom registry version ${{ inputs.node-version }}
|
||||
uses: ./.github/actions/install-app-node
|
||||
with:
|
||||
node-version: ${{ inputs.node_version }}
|
||||
- name: build
|
||||
run: pnpm build
|
||||
shell: bash
|
||||
12
.github/actions/cache-packages/action.yml
vendored
12
.github/actions/cache-packages/action.yml
vendored
@@ -1,12 +0,0 @@
|
||||
name: 'Cache packages'
|
||||
description: 'get or set cache packages'
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Cache Packages
|
||||
id: cache-packages
|
||||
uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.0.2
|
||||
with:
|
||||
path: ./packages/
|
||||
key: pkg-${{ hashFiles('pnpm-lock.yaml') }}-${{ github.run_id }}-${{ github.sha }}
|
||||
15
.github/actions/cache-store/action.yml
vendored
15
.github/actions/cache-store/action.yml
vendored
@@ -1,15 +0,0 @@
|
||||
name: 'Cache build'
|
||||
description: 'get or set cache build'
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Cache .pnpm-store
|
||||
id: cache-npm
|
||||
uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.0.2
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}-${{ github.event.pull_request.number }}-${{ runner.os }}
|
||||
restore-keys: |
|
||||
pnpm-
|
||||
|
||||
50
.github/actions/install-app-node/action.yml
vendored
50
.github/actions/install-app-node/action.yml
vendored
@@ -1,50 +0,0 @@
|
||||
name: 'Install app with Node specific version'
|
||||
description: 'install application'
|
||||
|
||||
inputs:
|
||||
registry-url:
|
||||
description: 'Registry URL for pnpm'
|
||||
required: false
|
||||
default: 'http://localhost:4873'
|
||||
reporter:
|
||||
description: 'Reporter for pnpm'
|
||||
required: false
|
||||
default: 'silent'
|
||||
loglevel:
|
||||
description: 'Log level for pnpm'
|
||||
required: false
|
||||
default: 'error'
|
||||
node-version:
|
||||
description: 'Node.js version to use'
|
||||
required: true
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Use Node
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version: ${{ inputs.node-version }}
|
||||
- name: Install pnpm
|
||||
run: |
|
||||
corepack enable
|
||||
corepack prepare
|
||||
shell: bash
|
||||
- name: set store
|
||||
run: |
|
||||
if [ ! -d "$HOME/.pnpm-store" ]; then
|
||||
mkdir -p $HOME/.pnpm-store
|
||||
pnpm config set store-dir $HOME/.pnpm-store
|
||||
else
|
||||
echo "Store directory already exists. Skipping configuration."
|
||||
fi
|
||||
shell: bash
|
||||
- name: Restore cache pnpm store
|
||||
uses: ./.github/actions/cache-store
|
||||
- name: Install
|
||||
run: pnpm install --reporter=${{inputs.reporter}} --ignore-scripts --registry ${{ inputs.registry-url }} --loglevel=${{ inputs.loglevel }}
|
||||
shell: bash
|
||||
- name: Save cache pnpm store
|
||||
if: steps.cache-npm.outputs.cache-hit == 'false'
|
||||
uses: ./.github/actions/cache-store
|
||||
|
||||
39
.github/actions/install-app/action.yml
vendored
39
.github/actions/install-app/action.yml
vendored
@@ -1,39 +0,0 @@
|
||||
name: 'Install app'
|
||||
description: 'install application'
|
||||
|
||||
inputs:
|
||||
registry-url:
|
||||
description: 'Registry URL for pnpm'
|
||||
required: false
|
||||
default: 'http://localhost:4873'
|
||||
reporter:
|
||||
description: 'Reporter for pnpm'
|
||||
required: false
|
||||
default: 'silent'
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
steps:
|
||||
- name: Use Node
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install pnpm
|
||||
run: |
|
||||
corepack enable
|
||||
corepack prepare
|
||||
shell: bash
|
||||
- name: set store
|
||||
run: |
|
||||
mkdir ~/.pnpm-store
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
shell: bash
|
||||
- name: Restore cache pnpm store
|
||||
uses: ./.github/actions/cache-store
|
||||
- name: Install
|
||||
run: pnpm install --reporter=${{inputs.reporter}} --ignore-scripts --registry ${{ inputs.registry-url }}
|
||||
shell: bash
|
||||
- name: Save cache pnpm store
|
||||
if: steps.cache-npm.outputs.cache-hit == 'false'
|
||||
uses: ./.github/actions/cache-store
|
||||
|
||||
25
.github/dependabot.yml
vendored
25
.github/dependabot.yml
vendored
@@ -5,14 +5,23 @@
|
||||
|
||||
version: 2
|
||||
updates:
|
||||
|
||||
# Maintain dependencies for GitHub Actions
|
||||
- package-ecosystem: 'github-actions'
|
||||
directory: '/'
|
||||
open-pull-requests-limit: 1
|
||||
prefix: "[github-actions] "
|
||||
assignees:
|
||||
- 'verdacciobot'
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: 'monthly'
|
||||
interval: "weekly"
|
||||
|
||||
# Maintain dependencies for npm
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
allow:
|
||||
- dependency-name: "@verdaccio/*"
|
||||
- dependency-name: "verdaccio-*"
|
||||
assignees:
|
||||
- "verdacciobot"
|
||||
labels:
|
||||
- 'bot: dependencies'
|
||||
- "bot: dependencies"
|
||||
|
||||
|
||||
148
.github/disabled/ci-windows.yml
vendored
148
.github/disabled/ci-windows.yml
vendored
@@ -1,148 +0,0 @@
|
||||
name: CI windows
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: '5 0 * * SUN'
|
||||
permissions:
|
||||
contents: read
|
||||
jobs:
|
||||
prepare:
|
||||
runs-on: ubuntu-latest
|
||||
name: setup verdaccio
|
||||
services:
|
||||
verdaccio:
|
||||
image: verdaccio/verdaccio:nightly-master
|
||||
ports:
|
||||
- 4873:4873
|
||||
env:
|
||||
NODE_ENV: production
|
||||
steps:
|
||||
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v3
|
||||
- name: Node
|
||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v3
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install pnpm
|
||||
run: |
|
||||
corepack enable
|
||||
corepack install
|
||||
- name: set store
|
||||
run: |
|
||||
mkdir ~/.pnpm-store
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
- name: Install
|
||||
run: pnpm install --registry http://localhost:4873
|
||||
- name: Cache .pnpm-store
|
||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
restore-keys: |
|
||||
pnpm-
|
||||
lint:
|
||||
runs-on: windows-latest
|
||||
name: Lint
|
||||
needs: prepare
|
||||
steps:
|
||||
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v3
|
||||
- name: Node
|
||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v3
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install pnpm
|
||||
run: npm i pnpm@latest-8 -g
|
||||
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
- name: set store
|
||||
run: |
|
||||
mkdir ~/.pnpm-store
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
- name: Install
|
||||
run: pnpm install --offline --reporter=silence --ignore-scripts
|
||||
- name: Lint
|
||||
run: pnpm lint
|
||||
format:
|
||||
runs-on: windows-latest
|
||||
name: Format
|
||||
needs: prepare
|
||||
steps:
|
||||
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v3
|
||||
- name: Use Node
|
||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v3
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install pnpm
|
||||
run: npm i pnpm@latest-8 -g
|
||||
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
- name: set store
|
||||
run: |
|
||||
mkdir ~/.pnpm-store
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
- name: Install
|
||||
run: pnpm install --offline --reporter=silence --ignore-scripts
|
||||
- name: Lint
|
||||
run: pnpm format:check
|
||||
build:
|
||||
needs: [format, lint]
|
||||
strategy:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
os: [windows-latest]
|
||||
node_version: [18]
|
||||
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v3
|
||||
- name: Use Node ${{ matrix.node_version }}
|
||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v3
|
||||
with:
|
||||
node-version: ${{ matrix.node_version }}
|
||||
- name: Install pnpm
|
||||
run: npm i pnpm@latest-8 -g
|
||||
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
- name: set store
|
||||
run: |
|
||||
mkdir ~/.pnpm-store
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
- name: Install
|
||||
run: pnpm install --offline --reporter=silence --ignore-scripts --registry http://localhost:4873
|
||||
- name: build
|
||||
run: pnpm build
|
||||
- name: Test
|
||||
run: pnpm test
|
||||
ci-e2e-ui:
|
||||
needs: [format, lint]
|
||||
runs-on: windows-latest
|
||||
name: UI Test E2E
|
||||
steps:
|
||||
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v3
|
||||
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v3
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install pnpm
|
||||
run: npm i pnpm@latest-8 -g
|
||||
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
- name: set store
|
||||
run: |
|
||||
mkdir ~/.pnpm-store
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
- name: Install
|
||||
run: pnpm install --offline --reporter=silence --registry http://localhost:4873
|
||||
- name: build
|
||||
run: pnpm build
|
||||
- name: Test UI
|
||||
run: pnpm test:e2e:ui
|
||||
# env:
|
||||
# DEBUG: verdaccio:e2e*
|
||||
39
.github/disabled/docker-plugins-e2e.yml
vendored
39
.github/disabled/docker-plugins-e2e.yml
vendored
@@ -1,39 +0,0 @@
|
||||
name: E2E Docker Proxy Plugins Test
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
schedule:
|
||||
# run every sunday
|
||||
- cron: '0 0 * * 0'
|
||||
jobs:
|
||||
docker:
|
||||
timeout-minutes: 10
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3
|
||||
|
||||
- name: Start containers
|
||||
run: docker compose -f "./e2e/docker/docker-build-install-plugin/docker-compose.yaml" up -d --build
|
||||
|
||||
- name: Install node
|
||||
uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3
|
||||
with:
|
||||
node-version: 18
|
||||
|
||||
- name: verdaccio cli
|
||||
run: npm install -g verdaccio --registry=http://localhost:4873
|
||||
- name: gastby cli
|
||||
run: npm install -g gatsby-cli --registry http://localhost:4873
|
||||
- name: netlify cli
|
||||
run: npm install -g netlify-cli --registry http://localhost:4873
|
||||
- name: angular cli
|
||||
run: npm install -g @angular/cli --registry http://localhost:4873
|
||||
|
||||
- name: Stop containers
|
||||
if: always()
|
||||
run: docker compose -f "./e2e/docker/docker-build-install-plugin/docker-compose.yaml" down
|
||||
131
.github/disabled/e2e-angular-cli-workflow.yml
vendored
131
.github/disabled/e2e-angular-cli-workflow.yml
vendored
@@ -1,131 +0,0 @@
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 3 * * 5'
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
name: 'E2E Angular CLI with verdaccio'
|
||||
jobs:
|
||||
# todo: fix yarn global issue, cannot find ng
|
||||
# yarn:
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# os: [ubuntu-latest, windows-latest]
|
||||
#
|
||||
# name: '${{ matrix.os }} / yarn:angular example'
|
||||
# runs-on: ${{ matrix.os }}
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v2.3.1
|
||||
#
|
||||
# - name: 'Use Node.js 10.x'
|
||||
# uses: actions/setup-node@v2.1.1
|
||||
# with:
|
||||
# node-version: 10.x
|
||||
# - name: Install Dependencies
|
||||
# run: yarn install --pure-lockfile
|
||||
# - name: 'Run verdaccio in the background'
|
||||
# run: |
|
||||
# nohup node ./scripts/run-verdaccio.js &
|
||||
# - name: 'Ping to verdaccio'
|
||||
# run: |
|
||||
# npm ping --registry http://localhost:4873
|
||||
# - name: 'Running the integration test'
|
||||
# run: |
|
||||
# source scripts/e2e-setup-ci.sh
|
||||
# yarn init --yes
|
||||
#
|
||||
# yarn global add @angular/cli
|
||||
# which nodemon
|
||||
# ng new verdaccio-angular --interactive=false
|
||||
#
|
||||
# cd verdaccio-angular
|
||||
# echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
# yarn add @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
#
|
||||
# ng build --aot
|
||||
npm:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest]
|
||||
|
||||
name: '${{ matrix.os }} / npm:angular example'
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.1
|
||||
|
||||
- name: 'Use Node.js 10.x'
|
||||
uses: actions/setup-node@v2.1.1
|
||||
with:
|
||||
node-version: 10.x
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm
|
||||
- name: Install Dependencies
|
||||
run: yarn install --pure-lockfile
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
npm config set loglevel="http"
|
||||
npm config set fetch-retries="5"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
npm install -g @angular/cli
|
||||
ng new verdaccio-angular --interactive=false
|
||||
|
||||
cd verdaccio-angular
|
||||
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
|
||||
npm run ng build --aot
|
||||
|
||||
# pnpm throws errors worth to check why
|
||||
# pnpm:
|
||||
# strategy:
|
||||
# fail-fast: false
|
||||
# matrix:
|
||||
# os: [ubuntu-latest, windows-latest]
|
||||
#
|
||||
# name: '${{ matrix.os }} / pnpm:angular example'
|
||||
# runs-on: ${{ matrix.os }}
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v2.3.1
|
||||
#
|
||||
# - name: 'Use Node.js 10.x'
|
||||
# uses: actions/setup-node@v2.1.1
|
||||
# with:
|
||||
# node-version: 10.x
|
||||
# - name: 'install latest pnpm'
|
||||
# run: npm i -g pnpm
|
||||
# - name: Install Dependencies
|
||||
# run: yarn install --pure-lockfile
|
||||
# - name: 'Run verdaccio in the background'
|
||||
# run: |
|
||||
# nohup node ./scripts/run-verdaccio.js &
|
||||
# - name: 'Ping to verdaccio'
|
||||
# run: |
|
||||
# pnpm ping --registry http://localhost:4873
|
||||
# - name: 'Running the integration test'
|
||||
# run: |
|
||||
# source scripts/e2e-setup-ci.sh
|
||||
# pnpm init --force
|
||||
#
|
||||
# pnpm install -g @angular/cli
|
||||
# ng new verdaccio-angular --interactive=false
|
||||
#
|
||||
# cd verdaccio-angular
|
||||
# echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
# pnpm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
#
|
||||
# pnpm run ng build --aot
|
||||
121
.github/disabled/e2e-jest-workflow.yml
vendored
121
.github/disabled/e2e-jest-workflow.yml
vendored
@@ -1,121 +0,0 @@
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 3 * * 5'
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
name: 'E2E Jest with verdaccio'
|
||||
jobs:
|
||||
yarn:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest]
|
||||
|
||||
name: '${{ matrix.os }} / yarn:jest example'
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.1
|
||||
|
||||
- name: 'Use Node.js 10.x'
|
||||
uses: actions/setup-node@v2.1.1
|
||||
with:
|
||||
node-version: 10.x
|
||||
- name: Install Dependencies
|
||||
run: yarn install --pure-lockfile
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
yarn init --yes
|
||||
yarn add jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
npm:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest]
|
||||
|
||||
name: '${{ matrix.os }} / npm:jest example'
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.1
|
||||
|
||||
- name: 'Use Node.js 10.x'
|
||||
uses: actions/setup-node@v2.1.1
|
||||
with:
|
||||
node-version: 10.x
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm
|
||||
- name: Install Dependencies
|
||||
run: yarn install --pure-lockfile
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --force
|
||||
npm install jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
pnpm:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest]
|
||||
|
||||
name: '${{ matrix.os }} / pnpm:jest example'
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.1
|
||||
|
||||
- name: 'Use Node.js 10.x'
|
||||
uses: actions/setup-node@v2.1.1
|
||||
with:
|
||||
node-version: 10.x
|
||||
- name: 'install latest pnpm'
|
||||
run: npm i -g pnpm
|
||||
- name: Install Dependencies
|
||||
run: yarn install --pure-lockfile
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
pnpm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
pnpm init --force
|
||||
pnpm install jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
35
.github/disabled/release-canary.yml
vendored
35
.github/disabled/release-canary.yml
vendored
@@ -1,35 +0,0 @@
|
||||
name: Canary Release to Verdaccio
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- .github/workflows/release-canary.yml
|
||||
- 'packages/**'
|
||||
- 'package.json'
|
||||
- 'lerna.json'
|
||||
|
||||
jobs:
|
||||
release:
|
||||
name: Release
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Use Node (latest)
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node_version: 13
|
||||
- name: Install
|
||||
run: yarn --frozen-lockfile
|
||||
- name: Clean
|
||||
run: yarn clean
|
||||
- name: Lint
|
||||
run: yarn lint
|
||||
- name: Build
|
||||
run: yarn build
|
||||
- name: Test
|
||||
run: yarn test
|
||||
- name: Publish
|
||||
run: |
|
||||
echo "//registry.verdaccio.org/:_authToken=${{ secrets.VERDACCIO_TOKEN }}" > .npmrc
|
||||
git update-index --assume-unchanged .npmrc
|
||||
yarn publish:canary
|
||||
14
.github/lock.yml
vendored
14
.github/lock.yml
vendored
@@ -13,10 +13,10 @@ lockLabel: false
|
||||
lockComment: >
|
||||
🤖This thread has been automatically locked 🔒 since there has not been
|
||||
any recent activity after it was closed.
|
||||
|
||||
|
||||
We lock tickets after 90 days with the idea to encourage you to open a ticket with new fresh data
|
||||
and to provide you better feedback 🤝and better visibility 👀.
|
||||
|
||||
|
||||
If you consider, you can attach this ticket 📨 to the new one as a reference for better context.
|
||||
|
||||
Thanks for being a part of the Verdaccio community! 💘
|
||||
@@ -26,10 +26,10 @@ lockComment: >
|
||||
|
||||
# Optionally, specify configuration settings just for `issues` or `pulls`
|
||||
issues:
|
||||
exemptLabels:
|
||||
- help-wanted
|
||||
lockLabel: outdated
|
||||
exemptLabels:
|
||||
- help-wanted
|
||||
lockLabel: outdated
|
||||
|
||||
pulls:
|
||||
daysUntilLock: 90
|
||||
lockLabel: outdated
|
||||
daysUntilLock: 90
|
||||
lockLabel: outdated
|
||||
|
||||
18
.github/stale.yml
vendored
18
.github/stale.yml
vendored
@@ -1,7 +1,7 @@
|
||||
# Number of days of inactivity before an issue becomes stale
|
||||
daysUntilStale: 365
|
||||
daysUntilStale: 15
|
||||
# Number of days of inactivity before a stale issue is closed
|
||||
daysUntilClose: 500
|
||||
daysUntilClose: 10
|
||||
# Issues with these labels will never be considered stale
|
||||
exemptLabels:
|
||||
- dev: high priority
|
||||
@@ -10,17 +10,17 @@ exemptLabels:
|
||||
- issue: bug
|
||||
- dev: discuss
|
||||
# Label to use when marking an issue as stale
|
||||
staleLabel: 'issue: wontfix'
|
||||
staleLabel: issue: wontfix
|
||||
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||
markComment: >
|
||||
Hi pal 👋🏼!
|
||||
Hi pal 👋🏼!
|
||||
|
||||
This issue has gone quiet 😶.
|
||||
This issue has gone quiet 😶.
|
||||
|
||||
We get a lot of issues, so we currently close issues after 180 days of inactivity. It’s been at least 90c days since the last update here.
|
||||
If we missed this issue or if you want to keep it open, please reply here. You can also add/suggest the label "discuss" to keep this issue open!
|
||||
As a friendly reminder: the best way to see this issue, or any other, fixed is to open a Pull Request. Check out [https://github.com/verdaccio/contributing](https://github.com/verdaccio/contributing) for more information about opening PRs, triaging issues, and contributing!
|
||||
We get a lot of issues, so we currently close issues after 25 days of inactivity. It’s been at least 15 days since the last update here.
|
||||
If we missed this issue or if you want to keep it open, please reply here. You can also add/suggest the label "discuss" to keep this issue open!
|
||||
As a friendly reminder: the best way to see this issue, or any other, fixed is to open a Pull Request. Check out [https://github.com/verdaccio/contributing](https://github.com/verdaccio/contributing) for more information about opening PRs, triaging issues, and contributing!
|
||||
|
||||
Thanks for being a part of the Verdaccio community! 💘
|
||||
Thanks for being a part of the Verdaccio community! 💘
|
||||
# Comment to post when closing a stale issue. Set to `false` to disable
|
||||
closeComment: false
|
||||
|
||||
69
.github/workflows/changesets.yml
vendored
69
.github/workflows/changesets.yml
vendored
@@ -1,69 +0,0 @@
|
||||
name: Changesets
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
env:
|
||||
CI: true
|
||||
PNPM_CACHE_FOLDER: .pnpm-store
|
||||
|
||||
jobs:
|
||||
# Update package versions from changesets.
|
||||
version:
|
||||
timeout-minutes: 14
|
||||
runs-on: ubuntu-latest
|
||||
if: github.ref == 'refs/heads/master' && github.repository == 'verdaccio/verdaccio'
|
||||
steps:
|
||||
- name: checkout code repository
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: setup node.js
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.REGISTRY_AUTH_TOKEN }}
|
||||
|
||||
- name: Install pnpm
|
||||
run: |
|
||||
corepack enable
|
||||
corepack install
|
||||
|
||||
- name: setup pnpm config
|
||||
run: pnpm config set store-dir $PNPM_CACHE_FOLDER
|
||||
- name: setup pnpm config registry
|
||||
run: pnpm config set registry https://registry.npmjs.org
|
||||
|
||||
- name: install dependencies
|
||||
run: pnpm install
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.REGISTRY_AUTH_TOKEN }}
|
||||
- name: crowdin download
|
||||
env:
|
||||
CROWDIN_VERDACCIO_API_KEY: ${{ secrets.CROWDIN_VERDACCIO_API_KEY }}
|
||||
CONTEXT: production
|
||||
run: pnpm crowdin:download
|
||||
- name: build
|
||||
run: pnpm build
|
||||
|
||||
- name: create versions
|
||||
uses: changesets/action@master
|
||||
with:
|
||||
version: pnpm ci:version
|
||||
commit: 'chore: update versions'
|
||||
title: 'chore: update versions'
|
||||
publish: pnpm ci:publish
|
||||
createGithubReleases: false
|
||||
setupGitUser: false
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.CHANGESET_RELEASE_TOKEN }}
|
||||
NPM_TOKEN: ${{ secrets.REGISTRY_AUTH_TOKEN }}
|
||||
NODE_AUTH_TOKEN: ${{ secrets.REGISTRY_AUTH_TOKEN }}
|
||||
NPM_CONFIG_REGISTRY: https://registry.npmjs.org
|
||||
27
.github/workflows/ci-e2e-ui.yml
vendored
Normal file
27
.github/workflows/ci-e2e-ui.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
name: E2E UI
|
||||
|
||||
on: [pull_request]
|
||||
|
||||
jobs:
|
||||
ci:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
node_version: [14]
|
||||
|
||||
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.1
|
||||
- name: Use Node ${{ matrix.node_version }}
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: ${{ matrix.node_version }}
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
- name: Build
|
||||
run: yarn code:build
|
||||
- name: Test UI
|
||||
run: yarn run test:e2e
|
||||
27
.github/workflows/ci-e2e.yml
vendored
Normal file
27
.github/workflows/ci-e2e.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
name: E2E CLI
|
||||
|
||||
on: [pull_request]
|
||||
|
||||
jobs:
|
||||
ci:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
node_version: [14]
|
||||
|
||||
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.1
|
||||
- name: Use Node ${{ matrix.node_version }}
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: ${{ matrix.node_version }}
|
||||
- name: Install
|
||||
run: yarn install
|
||||
- name: Build
|
||||
run: yarn code:build
|
||||
- name: Test CLI
|
||||
run: yarn test:e2e:cli
|
||||
127
.github/workflows/ci.yml
vendored
127
.github/workflows/ci.yml
vendored
@@ -1,114 +1,29 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
paths:
|
||||
- .changeset/**
|
||||
- .github/workflows/ci.yml
|
||||
- 'packages/**'
|
||||
- 'test/**'
|
||||
- 'docker-examples/**'
|
||||
- 'jest/**'
|
||||
- 'package.json'
|
||||
- 'pnpm-workspace.yaml'
|
||||
permissions:
|
||||
contents: read
|
||||
concurrency:
|
||||
group: ci-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
prepare:
|
||||
runs-on: ubuntu-latest
|
||||
name: setup verdaccio
|
||||
services:
|
||||
verdaccio:
|
||||
image: verdaccio/verdaccio:6
|
||||
ports:
|
||||
- 4873:4873
|
||||
env:
|
||||
NODE_ENV: production
|
||||
options: >-
|
||||
--health-cmd="curl -f http://0.0.0.0:4873/-/ping || exit 1"
|
||||
--health-interval=10s
|
||||
--health-timeout=20s
|
||||
--health-retries=6
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Install dependencies with a custom registry
|
||||
uses: ./.github/actions/install-app
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
name: Lint
|
||||
needs: prepare
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Install dependencies with a custom registry
|
||||
uses: ./.github/actions/install-app
|
||||
with:
|
||||
reporter: 'default'
|
||||
- name: Lint
|
||||
run: pnpm lint
|
||||
format:
|
||||
runs-on: ubuntu-latest
|
||||
name: Format
|
||||
needs: prepare
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Install dependencies with a custom registry
|
||||
uses: ./.github/actions/install-app
|
||||
with:
|
||||
reporter: 'default'
|
||||
- name: Lint
|
||||
run: pnpm format:check
|
||||
test:
|
||||
needs: [prepare]
|
||||
ci:
|
||||
name: Node ${{ matrix.node_version }}
|
||||
|
||||
strategy:
|
||||
fail-fast: true
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
node_version: [18, 20, 21, 22, 23]
|
||||
name: ${{ matrix.os }} / Node ${{ matrix.node_version }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Build application with Node ${{ matrix.node_version }}
|
||||
uses: ./.github/actions/build-app
|
||||
with:
|
||||
node-version: ${{ matrix.node_version }}
|
||||
- name: Test
|
||||
run: pnpm test
|
||||
sync-translations:
|
||||
needs: [test]
|
||||
node_version: [12, 14, 15, 16]
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
name: synchronize translations
|
||||
if: (github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository == 'verdaccio/verdaccio') || github.event_name == 'workflow_dispatch'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install pnpm
|
||||
run: |
|
||||
corepack enable
|
||||
corepack install
|
||||
- uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.0.2
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
- name: set store
|
||||
run: |
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
- name: Install
|
||||
## we need scripts, pupetter downloads aditional content
|
||||
run: pnpm install --registry http://localhost:4873
|
||||
- name: build
|
||||
run: pnpm build
|
||||
- name: generate website translations
|
||||
run: pnpm --filter ...@verdaccio/website write-translations
|
||||
- name: sync
|
||||
env:
|
||||
CROWDIN_VERDACCIO_API_KEY: ${{ secrets.CROWDIN_VERDACCIO_API_KEY }}
|
||||
CONTEXT: production
|
||||
run: pnpm crowdin:sync
|
||||
- uses: actions/checkout@v2.3.3
|
||||
- name: Use Node ${{ matrix.node_version }}
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: ${{ matrix.node_version }}
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
- name: Build
|
||||
run: yarn code:build
|
||||
- name: Lint
|
||||
run: yarn lint
|
||||
- name: Test
|
||||
run: yarn test
|
||||
|
||||
67
.github/workflows/codeql-analysis.yml
vendored
67
.github/workflows/codeql-analysis.yml
vendored
@@ -1,67 +0,0 @@
|
||||
name: 'CodeQL Analysis'
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- .github/workflows/codeql-analysis.yml
|
||||
- 'packages/**'
|
||||
pull_request:
|
||||
paths:
|
||||
- .github/workflows/codeql-analysis.yml
|
||||
- 'packages/**'
|
||||
schedule:
|
||||
- cron: '0 2 * * 4'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: code-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
CodeQL-Build:
|
||||
permissions:
|
||||
actions: read # for github/codeql-action/init to get workflow details
|
||||
contents: read # for actions/checkout to fetch code
|
||||
security-events: write # for github/codeql-action/autobuild to send a status report
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
# We must fetch at least the immediate parents so that if this is
|
||||
# a pull request then we can checkout the head.
|
||||
fetch-depth: 2
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
|
||||
with:
|
||||
config: |
|
||||
paths-ignore:
|
||||
- packages/config/test/partials/config/js/invalid.js
|
||||
- packages/middleware/test/static/js
|
||||
|
||||
# Override language selection by uncommenting this and choosing your languages
|
||||
# with:
|
||||
# languages: go, javascript, csharp, python, cpp, java
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
|
||||
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
||||
# and modify them (or add more) to build your code if your project
|
||||
# uses a compiled language
|
||||
|
||||
#- run: |
|
||||
# make bootstrap
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
|
||||
49
.github/workflows/docker-proxy-apache-e2e.yml
vendored
49
.github/workflows/docker-proxy-apache-e2e.yml
vendored
@@ -1,49 +0,0 @@
|
||||
name: E2E Docker Proxy Apache Test
|
||||
|
||||
concurrency:
|
||||
group: docker-apache-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
schedule:
|
||||
# run every sunday
|
||||
- cron: '0 0 * * 0'
|
||||
jobs:
|
||||
docker:
|
||||
timeout-minutes: 10
|
||||
runs-on: ubuntu-20.04
|
||||
env:
|
||||
NODE_OPTIONS: --max_old_space_size=4096
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Start containers
|
||||
run: docker compose -f "./e2e/docker/apache-verdaccio/docker-compose.yaml" up -d --build
|
||||
|
||||
- name: Install node
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: npm setup
|
||||
run: |
|
||||
npm config set fetch-retries="10"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
- name: verdaccio cli
|
||||
run: npm install -g verdaccio --registry http://localhost
|
||||
- name: gastby cli
|
||||
run: npm install -g gatsby-cli --registry http://localhost
|
||||
# - name: netlify cli
|
||||
# run: npm install -g netlify-cli --registry http://localhost
|
||||
- name: angular cli
|
||||
run: npm install -g @angular/cli --registry http://localhost
|
||||
|
||||
- name: Stop containers
|
||||
if: always()
|
||||
run: docker compose -f "./e2e/docker/apache-verdaccio/docker-compose.yaml" down
|
||||
47
.github/workflows/docker-proxy-nginx-e2e.yml
vendored
47
.github/workflows/docker-proxy-nginx-e2e.yml
vendored
@@ -1,47 +0,0 @@
|
||||
name: E2E Docker Proxy Nginx Test
|
||||
|
||||
concurrency:
|
||||
group: docker-nginx-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
jobs:
|
||||
docker:
|
||||
timeout-minutes: 10
|
||||
runs-on: ubuntu-20.04
|
||||
env:
|
||||
NODE_OPTIONS: --max_old_space_size=4096
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Start containers
|
||||
run: docker compose -f "./e2e/docker/proxy-nginx/docker-compose.yaml" up -d --build
|
||||
|
||||
- name: Install node
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: npm setup
|
||||
run: |
|
||||
npm config set fetch-retries="10"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
- name: verdaccio cli
|
||||
run: npm install -g verdaccio --registry http://localhost
|
||||
- name: gastby cli
|
||||
run: npm install -g gatsby-cli --registry http://localhost
|
||||
#- name: netlify cli
|
||||
# run: npm install -g netlify-cli --registry http://localhost
|
||||
- name: angular cli
|
||||
run: npm install -g @angular/cli --registry http://localhost
|
||||
|
||||
- name: Stop containers
|
||||
if: always()
|
||||
run: docker compose -f "./e2e/docker/proxy-nginx/docker-compose.yaml" down
|
||||
24
.github/workflows/docker-publish-pre-check.yml
vendored
Normal file
24
.github/workflows/docker-publish-pre-check.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
name: Docker & Publish Pre-check
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
testDocker:
|
||||
name: Test Docker Build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
- name: Build
|
||||
run: docker build .
|
||||
env:
|
||||
VERDACCIO_BUILD_REGISTRY: https://registry.npmjs.org
|
||||
|
||||
testVerdaccio:
|
||||
name: Test Verdaccio Publish
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
- name: Publish
|
||||
uses: verdaccio/github-actions/publish@v0.4.0
|
||||
with:
|
||||
args: -d
|
||||
32
.github/workflows/docker-publish.yml
vendored
32
.github/workflows/docker-publish.yml
vendored
@@ -4,28 +4,27 @@ on:
|
||||
push:
|
||||
paths:
|
||||
- .github/workflows/docker-publish.yml
|
||||
- .github/workflows/docker-publish.yml
|
||||
- 'packages/**'
|
||||
- 'src/**'
|
||||
- 'conf/**'
|
||||
- 'types/**'
|
||||
- 'docker-bin/**'
|
||||
- 'bin/**'
|
||||
- 'package.json'
|
||||
- 'pnpm-*.yaml'
|
||||
- 'Dockerfile'
|
||||
- '.dockerignore'
|
||||
- 'yarn.lock'
|
||||
- '.yarn/**'
|
||||
- '.yarnrc.yaml'
|
||||
- '.pnp.js'
|
||||
branches:
|
||||
- 'master'
|
||||
- '**'
|
||||
tags:
|
||||
- 'v*'
|
||||
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
- 'v*'
|
||||
|
||||
jobs:
|
||||
docker:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'verdaccio/verdaccio'
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0
|
||||
- uses: actions/checkout@v2
|
||||
- uses: docker/setup-qemu-action@v1
|
||||
- uses: docker/setup-buildx-action@v1
|
||||
with:
|
||||
driver-opts: network=host
|
||||
@@ -39,15 +38,14 @@ jobs:
|
||||
uses: crazy-max/ghaction-docker-meta@v1
|
||||
with:
|
||||
images: ${{ github.repository }}
|
||||
tag-custom: nightly-master
|
||||
tag-custom-only: ${{ github.ref == 'refs/heads/master' }}
|
||||
tag-latest: false
|
||||
tag-custom: 5.x-next
|
||||
tag-custom-only: ${{ github.ref == 'refs/heads/5.x' }}
|
||||
tag-semver: |
|
||||
{{version}}
|
||||
{{major}}
|
||||
{{major}}.{{minor}}
|
||||
- name: Build & Push
|
||||
uses: docker/build-push-action@v6
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
|
||||
153
.github/workflows/e2e-angular-cli-workflow.yml
vendored
Normal file
153
.github/workflows/e2e-angular-cli-workflow.yml
vendored
Normal file
@@ -0,0 +1,153 @@
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 3 * * 5'
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
name: 'E2E Angular CLI with verdaccio'
|
||||
jobs:
|
||||
# todo: fix yarn global issue, cannot find ng
|
||||
# yarn:
|
||||
# name: 'yarn:angular example'
|
||||
# runs-on: ubuntu-latest
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v2.3.3
|
||||
#
|
||||
# - name: 'Use Node.js 10.x'
|
||||
# uses: actions/setup-node@v2.1.5
|
||||
# with:
|
||||
# node-version: 10.x
|
||||
# - name: Install Dependencies
|
||||
# run: yarn install --pure-lockfile
|
||||
# - name: 'Run verdaccio in the background'
|
||||
# run: |
|
||||
# nohup yarn node ./scripts/run-verdaccio.js &
|
||||
# - name: 'Ping to verdaccio'
|
||||
# run: |
|
||||
# npm ping --registry http://localhost:4873
|
||||
# - name: 'Running the integration test'
|
||||
# run: |
|
||||
# source scripts/e2e-setup-ci.sh
|
||||
# yarn init --yes
|
||||
#
|
||||
# yarn global add @angular/cli
|
||||
# which nodemon
|
||||
# ng new verdaccio-angular --interactive=false
|
||||
#
|
||||
# cd verdaccio-angular
|
||||
# echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
# yarn add @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
#
|
||||
# ng build --aot
|
||||
npm:
|
||||
name: 'npm:angular example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 14.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm@latest-6
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
npm config set loglevel="http"
|
||||
npm config set fetch-retries="5"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
npm install -g @angular/cli
|
||||
ng new verdaccio-angular --interactive=false
|
||||
|
||||
cd verdaccio-angular
|
||||
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
|
||||
npm run ng build --aot
|
||||
npm7:
|
||||
name: 'npm7:angular example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 14.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm@next-7
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
npm config set loglevel="silent"
|
||||
npm config set fetch-retries="5"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
npm install -g @angular/cli
|
||||
ng new verdaccio-angular --interactive=false
|
||||
|
||||
cd verdaccio-angular
|
||||
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
|
||||
npm run ng build --aot
|
||||
|
||||
# pnpm throws errors worth to check why
|
||||
# pnpm:
|
||||
# name: 'pnpm:angular example'
|
||||
# runs-on: ubuntu-latest
|
||||
#
|
||||
# steps:
|
||||
# - uses: actions/checkout@v2.3.3
|
||||
#
|
||||
# - name: 'Use Node.js 10.x'
|
||||
# uses: actions/setup-node@v2.1.1
|
||||
# with:
|
||||
# node-version: 10.x
|
||||
# - name: 'install latest pnpm'
|
||||
# run: npm i -g pnpm
|
||||
# - name: Install Dependencies
|
||||
# run: yarn install --pure-lockfile
|
||||
# - name: 'Run verdaccio in the background'
|
||||
# run: |
|
||||
# nohup yarn node ./scripts/run-verdaccio.js &
|
||||
# - name: 'Ping to verdaccio'
|
||||
# run: |
|
||||
# pnpm ping --registry http://localhost:4873
|
||||
# - name: 'Running the integration test'
|
||||
# run: |
|
||||
# source scripts/e2e-setup-ci.sh
|
||||
# pnpm init --force
|
||||
#
|
||||
# pnpm install -g @angular/cli
|
||||
# ng new verdaccio-angular --interactive=false
|
||||
#
|
||||
# cd verdaccio-angular
|
||||
# echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
# pnpm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
#
|
||||
# pnpm run ng build --aot
|
||||
117
.github/workflows/e2e-ci.yml
vendored
117
.github/workflows/e2e-ci.yml
vendored
@@ -1,117 +0,0 @@
|
||||
name: E2E CLI
|
||||
|
||||
on: [pull_request]
|
||||
permissions:
|
||||
contents: read
|
||||
concurrency:
|
||||
group: e2e-ci-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
jobs:
|
||||
prepare:
|
||||
runs-on: ubuntu-latest
|
||||
name: setup e2e verdaccio
|
||||
services:
|
||||
verdaccio:
|
||||
image: verdaccio/verdaccio:nightly-master
|
||||
ports:
|
||||
- 4873:4873
|
||||
env:
|
||||
NODE_ENV: production
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Install dependencies with a custom registry
|
||||
uses: ./.github/actions/install-app
|
||||
build:
|
||||
needs: [prepare]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Build application with Node ${{ matrix.node_version }}
|
||||
uses: ./.github/actions/build-app
|
||||
with:
|
||||
node-version: ${{ matrix.node_version }}
|
||||
- name: Cache packages
|
||||
uses: ./.github/actions/cache-packages
|
||||
e2e-cli-npm:
|
||||
needs: [prepare, build]
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
pkg:
|
||||
[
|
||||
npm6,
|
||||
npm7,
|
||||
npm8,
|
||||
npm9,
|
||||
npm10
|
||||
]
|
||||
node: [18, 23]
|
||||
name: ${{ matrix.pkg }}/ ubuntu-latest / ${{ matrix.node }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Install dependencies with a custom registry version ${{ inputs.node-version }}
|
||||
uses: ./.github/actions/install-app-node
|
||||
with:
|
||||
node-version: ${{ inputs.node_version }}
|
||||
reporter: 'default'
|
||||
loglevel: 'debug'
|
||||
- name: Restore cache pnpm store
|
||||
uses: ./.github/actions/cache-packages
|
||||
- name: Test CLI
|
||||
run: NODE_ENV=production pnpm test --filter ...@verdaccio/e2e-cli-${{matrix.pkg}}
|
||||
|
||||
e2e-cli-pnpm:
|
||||
needs: [prepare, build]
|
||||
strategy:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
pkg:
|
||||
[
|
||||
pnpm8,
|
||||
pnpm9,
|
||||
pnpm10,
|
||||
]
|
||||
node: [18, 23]
|
||||
name: ${{ matrix.pkg }}/ ubuntu-latest / ${{ matrix.node }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Install dependencies with a custom registry version ${{ inputs.node-version }}
|
||||
uses: ./.github/actions/install-app-node
|
||||
with:
|
||||
node-version: ${{ inputs.node_version }}
|
||||
reporter: 'default'
|
||||
loglevel: 'debug'
|
||||
- name: Restore cache pnpm store
|
||||
uses: ./.github/actions/cache-packages
|
||||
- name: Test CLI
|
||||
run: NODE_ENV=production pnpm test --filter ...@verdaccio/e2e-cli-${{matrix.pkg}}
|
||||
e2e-cli-yarn:
|
||||
needs: [prepare, build]
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
pkg:
|
||||
[
|
||||
yarn1,
|
||||
yarn2,
|
||||
yarn3,
|
||||
yarn4
|
||||
]
|
||||
node: [18, 23]
|
||||
name: ${{ matrix.pkg }}/ ubuntu-latest / ${{ matrix.node }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Install dependencies with a custom registry version ${{ inputs.node-version }}
|
||||
uses: ./.github/actions/install-app-node
|
||||
with:
|
||||
node-version: ${{ inputs.node_version }}
|
||||
reporter: 'default'
|
||||
loglevel: 'debug'
|
||||
- name: Restore cache pnpm store
|
||||
uses: ./.github/actions/cache-packages
|
||||
- name: Test CLI
|
||||
run: NODE_ENV=production pnpm test --filter ...@verdaccio/e2e-cli-${{matrix.pkg}}
|
||||
|
||||
@@ -8,13 +8,8 @@ on:
|
||||
name: 'E2E Gatsby.js CLI with verdaccio'
|
||||
jobs:
|
||||
npm:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, windows-latest]
|
||||
|
||||
name: '${{ matrix.os }} / npm:gatsby example'
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: 'npm:gatsby example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
@@ -29,7 +24,7 @@ jobs:
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
209
.github/workflows/e2e-jest-workflow.yml
vendored
Normal file
209
.github/workflows/e2e-jest-workflow.yml
vendored
Normal file
@@ -0,0 +1,209 @@
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 3 * * 5'
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
name: 'E2E Jest with verdaccio'
|
||||
jobs:
|
||||
yarn:
|
||||
name: 'yarn:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 12.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 12.x
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
yarn init --yes
|
||||
yarn add jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
yarn2:
|
||||
name: 'yarn2:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 12.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 12.x
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
yarn init --yes
|
||||
yarn set version berry
|
||||
yarn config set npmRegistryServer "http://localhost:4873"
|
||||
yarn config set unsafeHttpWhitelist --json '["localhost"]'
|
||||
yarn add jest@26.0.0
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
npm:
|
||||
name: 'npm:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 12.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 12.x
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm@latest-6
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --force
|
||||
npm install jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
npm7:
|
||||
name: 'npm7:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 12.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 12.x
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --force
|
||||
npm install jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
|
||||
pnpm:
|
||||
name: 'pnpm:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 12.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 12.x
|
||||
- name: 'install latest pnpm'
|
||||
run: npm i -g pnpm
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
pnpm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
pnpm init --force
|
||||
pnpm install jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
pnpm6:
|
||||
name: 'pnpm6:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: 'Use Node.js 12.x'
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 12.x
|
||||
- name: 'install latest pnpm'
|
||||
run: sudo npm i pnpm@dev -g
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
pnpm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
pnpm init --force
|
||||
pnpm install jest --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
|
||||
|
||||
32
.github/workflows/e2e-ui.yml
vendored
32
.github/workflows/e2e-ui.yml
vendored
@@ -1,32 +0,0 @@
|
||||
name: E2E UI
|
||||
|
||||
on: [pull_request]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
concurrency:
|
||||
group: e2e-ui-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
name: UI Test E2E
|
||||
services:
|
||||
verdaccio:
|
||||
image: verdaccio/verdaccio:6
|
||||
ports:
|
||||
- 4873:4873
|
||||
env:
|
||||
NODE_ENV: production
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Build application with Node 20
|
||||
uses: ./.github/actions/build-app
|
||||
with:
|
||||
node-version: 20
|
||||
- name: Test UI
|
||||
run: pnpm test:e2e:ui
|
||||
- uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
|
||||
with:
|
||||
name: videos
|
||||
path: /home/runner/work/verdaccio/verdaccio/e2e/ui/cypress/videos
|
||||
40
.github/workflows/plugin-generator-e2e.yaml
vendored
40
.github/workflows/plugin-generator-e2e.yaml
vendored
@@ -1,40 +0,0 @@
|
||||
name: E2E Generator Verdaccio Plugin
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
|
||||
concurrency:
|
||||
group: generator-plugin-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
e2e-plugin-generator:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [20, 22, 23]
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Build application with Node ${{ matrix.node_version }}
|
||||
uses: ./.github/actions/build-app
|
||||
with:
|
||||
node-version: ${{ matrix.node_version }}
|
||||
- name: install verdaccio
|
||||
run: npm install -g verdaccio@5
|
||||
- name: Start server
|
||||
run: verdaccio -c e2e/docker/generator-e2e/generator.yaml &
|
||||
- name: ping server
|
||||
run: curl http://localhost:4873/-/ping
|
||||
- name: login
|
||||
run: npx npm-cli-login -u test -p test -e test@domain.test -r http://localhost:4873
|
||||
- name: publish
|
||||
run: pnpm local:publish
|
||||
- name: install yeoman
|
||||
run: npm install -g yo@4 --loglevel=info
|
||||
- name: install generator
|
||||
run: npm install -g generator-verdaccio-plugin --loglevel=info --registry http://localhost:4873
|
||||
# Future: add a test to verify the plugin is working with prompt
|
||||
@@ -2,7 +2,7 @@ name: Test local registry for js vulnerabilities
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 4 * * 4'
|
||||
- cron: '0 */4 1 * *'
|
||||
jobs:
|
||||
security:
|
||||
runs-on: ubuntu-latest
|
||||
@@ -10,4 +10,4 @@ jobs:
|
||||
- name: Test for public javascript library vulnerabilities
|
||||
uses: lirantal/is-website-vulnerable@1.15.10
|
||||
with:
|
||||
scan-url: 'https://registry.verdaccio.org'
|
||||
scan-url: "https://registry.verdaccio.org"
|
||||
30
.github/workflows/release.yml
vendored
Normal file
30
.github/workflows/release.yml
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*'
|
||||
jobs:
|
||||
release:
|
||||
name: Release
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
- name: Use Node (latest)
|
||||
uses: actions/setup-node@v2.1.5
|
||||
with:
|
||||
node-version: 14
|
||||
- name: Install
|
||||
run: yarn install
|
||||
- name: Build
|
||||
run: yarn code:build
|
||||
- name: Publish
|
||||
run: sh scripts/publish.sh
|
||||
env:
|
||||
REGISTRY_AUTH_TOKEN: ${{ secrets.REGISTRY_AUTH_TOKEN }}
|
||||
REGISTRY_URL: registry.npmjs.org
|
||||
# FIXME: there is an issue where all the changelog is copied to the release notes (all versions)
|
||||
# - name: Create release notes
|
||||
# run: sh scripts/github-release.sh
|
||||
# env:
|
||||
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
56
.github/workflows/shared-docker-publish.yml
vendored
56
.github/workflows/shared-docker-publish.yml
vendored
@@ -1,56 +0,0 @@
|
||||
name: Docker publish to docker.io
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
tag-latest:
|
||||
required: true
|
||||
type: boolean
|
||||
description: 'Tag as latest'
|
||||
default: false
|
||||
tag-custom:
|
||||
required: true
|
||||
type: string
|
||||
description: 'Custom tag'
|
||||
default: 'nightly-master'
|
||||
tag-custom-only:
|
||||
required: true
|
||||
type: boolean
|
||||
description: 'Custom tag only'
|
||||
default: false
|
||||
jobs:
|
||||
docker:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'verdaccio/verdaccio'
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0
|
||||
- uses: docker/setup-buildx-action@v1
|
||||
with:
|
||||
driver-opts: network=host
|
||||
- uses: docker/login-action@v1
|
||||
name: Login Docker Hub
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- name: Prepare docker image tags
|
||||
id: docker_meta
|
||||
uses: crazy-max/ghaction-docker-meta@v1
|
||||
with:
|
||||
images: ${{ github.repository }}
|
||||
tag-custom: ${{ inputs.tag-custom }}
|
||||
tag-custom-only: ${{ inputs.tag-custom-only }}
|
||||
tag-latest: ${{ inputs.tag-latest }}
|
||||
tag-semver: |
|
||||
{{version}}
|
||||
{{major}}
|
||||
{{major}}.{{minor}}
|
||||
- name: Build & Push
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: ${{ github.event_name != 'pull_request' }}
|
||||
tags: ${{ steps.docker_meta.outputs.tags }}
|
||||
labels: ${{ steps.docker_meta.outputs.labels }}
|
||||
53
.github/workflows/static-data.yml
vendored
53
.github/workflows/static-data.yml
vendored
@@ -1,53 +0,0 @@
|
||||
---
|
||||
name: static data
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
# pull_request:
|
||||
schedule:
|
||||
# twice peer week
|
||||
- cron: '0 0 * * 1,4'
|
||||
# for now, scheduled, we can enable on push master but not make much sense now
|
||||
# push:
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
|
||||
jobs:
|
||||
prepare:
|
||||
name: Run script
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'verdaccio/verdaccio'
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
fetch-depth: 0
|
||||
- name: Install dependencies with a custom registry
|
||||
uses: ./.github/actions/install-app
|
||||
with:
|
||||
reporter: 'default'
|
||||
- name: Build Translations percentage
|
||||
run: pnpm --filter @verdaccio/crowdin-translations build
|
||||
- name: update contributors
|
||||
run: pnpm run contributors
|
||||
env:
|
||||
TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: update addson data
|
||||
run: pnpm script:addson
|
||||
- name: update translations
|
||||
run: pnpm run translations
|
||||
env:
|
||||
TOKEN: ${{ secrets.CROWDIN_VERDACCIO_API_KEY }}
|
||||
- name: format
|
||||
run: pnpm format
|
||||
- name: Commit & Push changes
|
||||
uses: actions-js/push@5a7cbd780d82c0c937b5977586e641b2fd94acc5 # tag=v1.5
|
||||
with:
|
||||
github_token: ${{ secrets.TOKEN_VERDACCIOBOT_GITHUB }}
|
||||
message: "chore: updated static data"
|
||||
branch: master
|
||||
author_email: verdaccio.npm@gmail.com
|
||||
author_name: verdacciobot
|
||||
13
.github/workflows/test-docker-build.yml
vendored
13
.github/workflows/test-docker-build.yml
vendored
@@ -1,13 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
testDocker:
|
||||
name: Test Docker Build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Build
|
||||
run: docker build .
|
||||
env:
|
||||
VERDACCIO_BUILD_REGISTRY: https://registry.npmjs.org
|
||||
13
.github/workflows/test-publish-package.yml
vendored
13
.github/workflows/test-publish-package.yml
vendored
@@ -1,13 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
testVerdaccio:
|
||||
name: Test Verdaccio Publish
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Publish
|
||||
uses: verdaccio/github-actions/publish@f2e0370cfa5d74d24c325017b701bfddc9cc2e5d # tag=v0.4.0
|
||||
with:
|
||||
args: -d
|
||||
47
.github/workflows/ui-components.yml
vendored
47
.github/workflows/ui-components.yml
vendored
@@ -1,47 +0,0 @@
|
||||
name: UI Components
|
||||
|
||||
on:
|
||||
# pull_request:
|
||||
workflow_dispatch:
|
||||
# schedule:
|
||||
# - cron: '0 0 * * *'
|
||||
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
|
||||
env:
|
||||
DEBUG: verdaccio*
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
deployments: write
|
||||
pull-requests: write # to comment on pull-requests
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'verdaccio/verdaccio'
|
||||
env:
|
||||
NODE_OPTIONS: --max_old_space_size=4096
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Install dependencies with a custom registry
|
||||
uses: ./.github/actions/install-app
|
||||
|
||||
- name: Install pnpm
|
||||
run: |
|
||||
corepack enable
|
||||
corepack prepare
|
||||
- name: Install
|
||||
run: pnpm install
|
||||
- name: Build storybook
|
||||
run: pnpm ui:storybook:build
|
||||
- name: Copy public content
|
||||
# the msw.js worker is need it at the storybook-static folder in production
|
||||
run: cp -R packages/ui-components/public/* packages/ui-components/storybook-static
|
||||
- name: Deploy to Netlify
|
||||
env:
|
||||
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_UI_SITE_ID }}
|
||||
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
|
||||
run: pnpm --filter ...@verdaccio/ui-components netlify:ui:deploy
|
||||
58
.github/workflows/website.yml
vendored
58
.github/workflows/website.yml
vendored
@@ -1,58 +0,0 @@
|
||||
name: Verdaccio Website CI
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
|
||||
concurrency:
|
||||
group: website-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
deployments: write
|
||||
pull-requests: write # to comment on pull-requests
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'verdaccio/verdaccio'
|
||||
name: setup verdaccio
|
||||
services:
|
||||
verdaccio:
|
||||
image: verdaccio/verdaccio:6
|
||||
ports:
|
||||
- 4873:4873
|
||||
env:
|
||||
NODE_ENV: production
|
||||
env:
|
||||
NODE_OPTIONS: --max_old_space_size=4096
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Build application with Node 20
|
||||
uses: ./.github/actions/build-app
|
||||
with:
|
||||
node-version: 20
|
||||
- name: Build Translations percentage
|
||||
run: pnpm --filter @verdaccio/crowdin-translations build
|
||||
- name: Cache Docusaurus Build
|
||||
uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.0.2
|
||||
with:
|
||||
path: website/node_modules/.cache/webpack
|
||||
key: cache/webpack-${{github.ref}}-${{ hashFiles('**/pnpm-lock.yaml') }}
|
||||
restore-keys: cache/webpack-${{github.ref}}
|
||||
- name: Build Production
|
||||
if: (github.event_name == 'push' && github.ref == 'refs/heads/master') || github.event_name == 'workflow_dispatch'
|
||||
env:
|
||||
CROWDIN_VERDACCIO_API_KEY: ${{ secrets.CROWDIN_VERDACCIO_API_KEY }}
|
||||
SENTRY_KEY: ${{ secrets.SENTRY_KEY }}
|
||||
CONTEXT: production
|
||||
run: pnpm --filter @verdaccio/website netlify:build
|
||||
- name: Deploy to Netlify
|
||||
if: (github.event_name == 'push' && github.ref == 'refs/heads/master') || github.event_name == 'workflow_dispatch'
|
||||
env:
|
||||
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
|
||||
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
|
||||
run: pnpm --filter ...@verdaccio/website netlify:deploy
|
||||
|
||||
114
.github/workflows/x-e2e-angular-cli-workflow.yml
vendored
114
.github/workflows/x-e2e-angular-cli-workflow.yml
vendored
@@ -1,114 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
npm8:
|
||||
name: 'npm8:angular example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm@next-8
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
npm config set loglevel="silent"
|
||||
npm config set fetch-retries="5"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
npm install -g @angular/cli
|
||||
ng new verdaccio-angular --interactive=false
|
||||
|
||||
cd verdaccio-angular
|
||||
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
|
||||
npm run ng build --aot
|
||||
npm9:
|
||||
name: 'npm9:angular example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest npm 9'
|
||||
run: npm i -g npm@next-9
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
npm config set loglevel="silent"
|
||||
npm config set fetch-retries="5"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
npm install -g @angular/cli
|
||||
ng new verdaccio-angular --interactive=false
|
||||
|
||||
cd verdaccio-angular
|
||||
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
npm run ng build --aot
|
||||
npm10:
|
||||
name: 'npm10:angular example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest npm 10'
|
||||
run: npm i -g npm@next-10
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873" > ~/.npmrc
|
||||
npm config set loglevel="info"
|
||||
npm config set fetch-retries="5"
|
||||
npm config set fetch-retry-factor="50"
|
||||
npm config set fetch-retry-mintimeout="20000"
|
||||
npm config set fetch-retry-maxtimeout="80000"
|
||||
npm install -g @angular/cli
|
||||
ng new verdaccio-angular --interactive=false
|
||||
|
||||
cd verdaccio-angular
|
||||
npm install @angular-devkit/core@next @babel/preset-env @babel/core -D
|
||||
|
||||
npm run ng build --aot
|
||||
31
.github/workflows/x-e2e-audit-workflow.yml
vendored
31
.github/workflows/x-e2e-audit-workflow.yml
vendored
@@ -1,31 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
npm10:
|
||||
name: 'npm10:audit example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest npm 10'
|
||||
run: npm i -g npm@next-10
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --yes
|
||||
npm install next --registry http://localhost:4873 --loglevel info
|
||||
npm audit
|
||||
@@ -1,74 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
npm9:
|
||||
name: 'npm9:gatsby example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install npm 9'
|
||||
run: npm i -g npm@next-9
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873
|
||||
loglevel="info"
|
||||
fetch-retries=10
|
||||
fetch-retry-factor=2
|
||||
fetch-retry-mintimeout=10000
|
||||
fetch-retry-maxtimeout=80000" > ~/.npmrc
|
||||
npm config list
|
||||
npm i -g gatsby@latest
|
||||
gatsby new my-gatsby
|
||||
cd my-gatsby
|
||||
npm run build
|
||||
npm10:
|
||||
name: 'npm10:gatsby example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install npm 10'
|
||||
run: npm i -g npm@next-10
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
echo "registry=http://localhost:4873
|
||||
loglevel="info"
|
||||
fetch-retries=10
|
||||
fetch-retry-factor=2
|
||||
fetch-retry-mintimeout=10000
|
||||
fetch-retry-maxtimeout=80000" > ~/.npmrc
|
||||
npm config list
|
||||
npm i -g gatsby@latest
|
||||
gatsby new my-gatsby
|
||||
cd my-gatsby
|
||||
npm run build
|
||||
234
.github/workflows/x-e2e-jest-workflow.yml
vendored
234
.github/workflows/x-e2e-jest-workflow.yml
vendored
@@ -1,234 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
yarn:
|
||||
name: 'yarn:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
yarn init --yes
|
||||
yarn add jest@29.5.0 --registry http://localhost:4873
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
yarn2:
|
||||
name: 'yarn2:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
yarn init --yes
|
||||
yarn set version berry
|
||||
yarn config set npmRegistryServer "http://localhost:4873"
|
||||
yarn config set unsafeHttpWhitelist --json '["localhost"]'
|
||||
yarn add jest@29.5.0
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
npm8:
|
||||
name: 'npm8:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest npm'
|
||||
run: npm i -g npm@next-8
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --yes
|
||||
npm install jest@29.5.0 --registry http://localhost:4873 --loglevel info
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
npm9:
|
||||
name: 'npm9:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest npm 9'
|
||||
run: npm i -g npm@next-9
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --yes
|
||||
npm install jest@29.4.2 --registry http://localhost:4873 --loglevel info
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
npm10:
|
||||
name: 'npm10:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest npm 10'
|
||||
run: npm i -g npm@next-10
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js --config ./scripts/e2e-config.yaml &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
npm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --yes
|
||||
npm install jest@29.4.2 --registry http://localhost:4873 --loglevel info
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
pnpm8:
|
||||
name: 'pnpm8:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest pnpm'
|
||||
run: npm i -g pnpm@latest-8
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
nohup yarn node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
pnpm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
pnpm init
|
||||
pnpm install jest@29.5.0 --registry http://localhost:4873 --loglevel info
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
pnpm9:
|
||||
name: 'pnpm:9:jest example'
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: 'Use Node.js'
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: 'install latest pnpm'
|
||||
run: npm i -g pnpm@latest-9
|
||||
- name: Install Dependencies
|
||||
run: yarn install
|
||||
- name: 'Run verdaccio in the background'
|
||||
run: |
|
||||
yarn node ./scripts/run-verdaccio.js &
|
||||
- name: 'Ping to verdaccio'
|
||||
run: |
|
||||
pnpm ping --registry http://localhost:4873
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
pnpm init
|
||||
pnpm install jest@29.5.0 --registry http://localhost:4873 --loglevel info
|
||||
|
||||
echo "it('should pass', () => { expect(true).toBeTruthy(); });" | tee pass.test.js
|
||||
yarn jest pass.test.js
|
||||
|
||||
yarn add left-pad --registry http://localhost:4873 --verbose
|
||||
echo "const leftPad = require('left-pad'); it('should resolve a module', () => { expect(typeof leftPad).toBe('function');});" | tee module.test.js
|
||||
yarn jest module.test.js
|
||||
28
.github/workflows/x-release-snapshot.yml
vendored
28
.github/workflows/x-release-snapshot.yml
vendored
@@ -1,28 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
release:
|
||||
name: Release Snapshot
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Use Node (latest)
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install
|
||||
run: yarn install
|
||||
- name: Build
|
||||
run: yarn build
|
||||
- name: Declare some variables
|
||||
shell: bash
|
||||
run: |
|
||||
echo "sha_short=$(git rev-parse --short "$GITHUB_SHA")" >> "$GITHUB_ENV"
|
||||
- name: Bump up package
|
||||
run: npm version prerelease --no-git-tag-version --preid ${{ env.sha_short }}
|
||||
- name: Publish
|
||||
run: sh scripts/publish-prerelease.sh
|
||||
env:
|
||||
REGISTRY_AUTH_TOKEN: ${{ secrets.VERDACCIO_REGISTRY_TOKEN_CANARY }}
|
||||
REGISTRY_URL: rg.verdaccio.org
|
||||
28
.github/workflows/x-release.yml
vendored
28
.github/workflows/x-release.yml
vendored
@@ -1,28 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
release:
|
||||
name: Release
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Use Node (latest)
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install
|
||||
run: yarn install
|
||||
- name: Build
|
||||
run: yarn build
|
||||
- name: Types
|
||||
run: yarn code:types
|
||||
- name: Publish
|
||||
run: sh scripts/publish.sh
|
||||
env:
|
||||
REGISTRY_AUTH_TOKEN: ${{ secrets.REGISTRY_AUTH_TOKEN }}
|
||||
REGISTRY_URL: registry.npmjs.org
|
||||
- name: Create release notes
|
||||
run: sh scripts/github-release.sh
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
32
.github/workflows/x-smok-test-docker.yml
vendored
32
.github/workflows/x-smok-test-docker.yml
vendored
@@ -1,32 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
docker_tag:
|
||||
required: true
|
||||
type: string
|
||||
description: 'Docker tag to use for the verdaccio image'
|
||||
default: '5'
|
||||
module_tag:
|
||||
required: true
|
||||
type: string
|
||||
description: 'Npmjs module tag to use for the verdaccio image'
|
||||
default: '@latest'
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Docker test
|
||||
run: |
|
||||
docker run -d -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio:${{ inputs.docker_tag }}
|
||||
- name: verdaccio cli
|
||||
run: npm install -g verdaccio${{inputs.module_tag }} --registry http://localhost:4873
|
||||
- name: gastby cli
|
||||
run: npm install -g gatsby-cli --registry http://localhost:4873
|
||||
- name: netlify cli
|
||||
run: npm install -g netlify-cli --registry http://localhost:4873
|
||||
- name: angular cli
|
||||
run: npm install -g @angular/cli --registry http://localhost:4873
|
||||
45
.github/workflows/x-smok-test-module.yml
vendored
45
.github/workflows/x-smok-test-module.yml
vendored
@@ -1,45 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
docker_tag:
|
||||
required: true
|
||||
type: string
|
||||
description: 'Docker tag to use for the verdaccio image'
|
||||
default: '5'
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Use Node (latest)
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Docker test
|
||||
run: |
|
||||
docker run -d -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio:${{ inputs.docker_tag }}
|
||||
- name: login
|
||||
run: npx npm-cli-login -u test -p 1234 -e test@domain.test -r http://localhost:4873
|
||||
- name: Install
|
||||
run: yarn
|
||||
- name: Build
|
||||
run: yarn build
|
||||
- name: Types
|
||||
run: yarn code:types
|
||||
- name: Bump up package
|
||||
run: npm version prerelease --no-git-tag-version --preid $(date +%s%N)
|
||||
- name: publish verdaccio
|
||||
run: npm publish --registry http://localhost:4873
|
||||
- name: install verdaccio
|
||||
run: npm i -g verdaccio --loglevel info --registry http://localhost:4873
|
||||
- name: verdaccio version
|
||||
run: verdaccio --version
|
||||
- name: 'Running the integration test'
|
||||
run: |
|
||||
source scripts/e2e-setup-ci.sh
|
||||
npm init --force
|
||||
npm install jest --registry http://localhost:4873
|
||||
npm install verdaccio --registry http://localhost:4873
|
||||
echo "test('require module should works', () => { const {runServer} = require('verdaccio') });" | tee module.spec.js
|
||||
cat module.spec.js
|
||||
yarn jest
|
||||
21
.github/workflows/yarn-ci-lint.yml
vendored
21
.github/workflows/yarn-ci-lint.yml
vendored
@@ -1,21 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
ci-lint:
|
||||
name: Node Lint
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Use Node
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
- name: Format
|
||||
run: yarn format:check
|
||||
- name: Lint
|
||||
run: yarn lint
|
||||
- name: Lint Lockfile
|
||||
run: yarn lint:lockfile
|
||||
24
.github/workflows/yarn-ci.yml
vendored
24
.github/workflows/yarn-ci.yml
vendored
@@ -1,24 +0,0 @@
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
node_version:
|
||||
required: true
|
||||
type: string
|
||||
jobs:
|
||||
ci:
|
||||
name: Node ${{ inputs.node_version }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Use Node ${{ inputs.node_version }}
|
||||
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
|
||||
with:
|
||||
node-version: ${{ inputs.node_version }}
|
||||
- name: Install
|
||||
run: yarn install --immutable
|
||||
- name: Build
|
||||
run: yarn build
|
||||
- name: Types
|
||||
run: yarn code:types
|
||||
- name: Test
|
||||
run: yarn test
|
||||
61
.gitignore
vendored
61
.gitignore
vendored
@@ -1,58 +1,39 @@
|
||||
*.log*
|
||||
|
||||
verdaccio-*.tgz
|
||||
.DS_Store
|
||||
build/
|
||||
dist/
|
||||
.eslintcache
|
||||
node_modules
|
||||
|
||||
### database
|
||||
### Test
|
||||
|
||||
test/unit/partials/store/test-*-storage/*
|
||||
test/unit/partials/store/*-storage/*
|
||||
test/unit/partials/store/storage_default_storage/*
|
||||
.verdaccio-db.json
|
||||
.sinopia-db.json
|
||||
|
||||
### test
|
||||
###
|
||||
!bin/verdaccio
|
||||
test-storage*
|
||||
access-storage*
|
||||
.verdaccio_test_env
|
||||
node_modules
|
||||
package-lock.json
|
||||
npm_test-fails-add-tarball*
|
||||
yarn-error.log
|
||||
|
||||
# docker examples
|
||||
docker-examples/v5/reverse_proxy/nginx/relative_path/storage/*
|
||||
docker-examples/v5/**/storage/*
|
||||
|
||||
# jest
|
||||
# coverage
|
||||
reports/
|
||||
coverage/
|
||||
|
||||
## IDE
|
||||
# IDE
|
||||
.idea/
|
||||
|
||||
# Compiled script
|
||||
packages/partials
|
||||
tsconfig.tsbuildinfo
|
||||
static/*
|
||||
|
||||
## bundle files
|
||||
packages/standalone/dist/
|
||||
# This is the Yarn build state; it's local to each clone
|
||||
/.yarn/build-state.yml
|
||||
|
||||
## ui
|
||||
packages/plugins/ui-theme/static
|
||||
/packages/plugins/ui-theme/src/i18n/download_translations/
|
||||
!/packages/plugins/ui-theme/src/i18n/crowdin/ui.json
|
||||
|
||||
|
||||
# CI Pnpm cache
|
||||
.pnpm-store/
|
||||
|
||||
#docs
|
||||
website/docs/api/**/*.md
|
||||
website/docs/api/**/*.yml
|
||||
!website/docs/api/index.md
|
||||
packages/**/docs
|
||||
|
||||
# cypress
|
||||
e2e/ui/cypress/videos/**/*
|
||||
e2e/ui/cypress/screenshots/**/*
|
||||
|
||||
# storybook
|
||||
packages/ui-components/storybook-static
|
||||
|
||||
# plugin generator
|
||||
packages/tools/generator-verdaccio-plugin/generators/
|
||||
# This is the Yarn install state cache, it can be rebuilt anytime
|
||||
/.yarn/install-state.gz
|
||||
.history
|
||||
|
||||
1
.husky/.gitignore
vendored
Normal file
1
.husky/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
_
|
||||
4
.husky/commit-msg
Executable file
4
.husky/commit-msg
Executable file
@@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
. "$(dirname "$0")/_/husky.sh"
|
||||
|
||||
yarn commitlint --edit "$1"
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/bin/sh
|
||||
. "$(dirname "$0")/_/husky.sh"
|
||||
|
||||
#./node_modules/.bin/lint-staged
|
||||
npm run husky:pre-commit
|
||||
yarn lint-staged
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
|
||||
## npm
|
||||
npm-debug.log
|
||||
yarn-error.log
|
||||
@@ -22,6 +23,7 @@ docs/
|
||||
wiki/
|
||||
|
||||
## flow
|
||||
flow-typed/
|
||||
types/
|
||||
|
||||
# jest
|
||||
@@ -29,6 +31,10 @@ coverage/
|
||||
test-storage*
|
||||
test/
|
||||
__mocks__/
|
||||
jestEnvironment.js
|
||||
test/jest.e2e.config.js
|
||||
test/jest.config.functional.js
|
||||
jest.config.js
|
||||
|
||||
# misc
|
||||
contrib/
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user