mirror of
https://github.com/veggiemonk/awesome-docker.git
synced 2024-10-01 01:36:03 -04:00
Fix regex for links
This commit is contained in:
parent
3ddaea3999
commit
6e85932357
@ -120,7 +120,7 @@ _Source:_ [What is Docker](https://www.docker.com/why-docker)
|
|||||||
- [Exploring ASP.NET Core with Docker in both Linux and Windows Containers](https://www.hanselman.com/blog/ExploringASPNETCoreWithDockerInBothLinuxAndWindowsContainers.aspx) Running ASP.NET Core apps in Linux and Windows containers, using [Docker for Windows][docker-for-windows]
|
- [Exploring ASP.NET Core with Docker in both Linux and Windows Containers](https://www.hanselman.com/blog/ExploringASPNETCoreWithDockerInBothLinuxAndWindowsContainers.aspx) Running ASP.NET Core apps in Linux and Windows containers, using [Docker for Windows][docker-for-windows]
|
||||||
- [Running a Legacy ASP.NET App in a Windows Container](https://blog.sixeyed.com/dockerizing-nerd-dinner-part-1-running-a-legacy-asp-net-app-in-a-windows-container/) Steps for Dockerizing a legacy ASP.NET app and runnning as a Windows container
|
- [Running a Legacy ASP.NET App in a Windows Container](https://blog.sixeyed.com/dockerizing-nerd-dinner-part-1-running-a-legacy-asp-net-app-in-a-windows-container/) Steps for Dockerizing a legacy ASP.NET app and runnning as a Windows container
|
||||||
- [Windows Containers and Docker: The 101](https://www.youtube.com/watch?v=N7SG2wEyQtM) :movie_camera: - A 20-minute overview, using Docker to run PowerShell, ASP.NET Core and ASP.NET apps
|
- [Windows Containers and Docker: The 101](https://www.youtube.com/watch?v=N7SG2wEyQtM) :movie_camera: - A 20-minute overview, using Docker to run PowerShell, ASP.NET Core and ASP.NET apps
|
||||||
- [Windows Containers Quick Start](https://docs.microsoft.com/en-us/virtualization/windowscontainers/about/index) Overview of Windows containers, drilling down to Quick Starts for Windows 10 and Windows Server 2016
|
- [Windows Containers Quick Start](https://docs.microsoft.com/en-us/virtualization/windowscontainers/about/) Overview of Windows containers, drilling down to Quick Starts for Windows 10 and Windows Server 2016
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -659,7 +659,7 @@ Services to securely store your Docker images.
|
|||||||
|
|
||||||
## Awesome Lists
|
## Awesome Lists
|
||||||
|
|
||||||
- [Awesome CI/CD](https://github.com/ciandcd/awesome-ciandcd) - Not specific to docker but relevant.
|
- [Awesome CI/CD](https://github.com/cicdops/awesome-ciandcd) - Not specific to docker but relevant.
|
||||||
- [Awesome Kubernetes](https://github.com/ramitsurana/awesome-kubernetes) by [@ramitsurana][ramitsurana]
|
- [Awesome Kubernetes](https://github.com/ramitsurana/awesome-kubernetes) by [@ramitsurana][ramitsurana]
|
||||||
- [Awesome Linux Container](https://github.com/Friz-zy/awesome-linux-containers) more general about container than this repo, by [@Friz-zy](https://github.com/Friz-zy).
|
- [Awesome Linux Container](https://github.com/Friz-zy/awesome-linux-containers) more general about container than this repo, by [@Friz-zy](https://github.com/Friz-zy).
|
||||||
- [Awesome Selfhosted](https://github.com/awesome-selfhosted/awesome-selfhosted) list of Free Software network services and web applications which can be hosted locally by running in a classical way (setup local web server and run applications from there) or in a Docker container. By [@Kickball](https://github.com/Kickball)
|
- [Awesome Selfhosted](https://github.com/awesome-selfhosted/awesome-selfhosted) list of Free Software network services and web applications which can be hosted locally by running in a classical way (setup local web server and run applications from there) or in a Docker container. By [@Kickball](https://github.com/Kickball)
|
||||||
|
4
exclude_in_test.json
Normal file
4
exclude_in_test.json
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"https://vimeo.com": true,
|
||||||
|
"https://travis-ci.org/veggiemonk/awesome-docker.svg": true
|
||||||
|
}
|
@ -1,5 +1,6 @@
|
|||||||
const fs = require('fs-extra');
|
const fs = require('fs-extra');
|
||||||
const fetch = require('node-fetch');
|
const fetch = require('node-fetch');
|
||||||
|
const exclude = require('./exclude_in_test.json');
|
||||||
|
|
||||||
function envvar_undefined(variable_name) {
|
function envvar_undefined(variable_name) {
|
||||||
throw new Error(`${variable_name} must be defined`);
|
throw new Error(`${variable_name} must be defined`);
|
||||||
@ -37,16 +38,13 @@ const make_GQL_options = (query) => ({
|
|||||||
const LOG = {
|
const LOG = {
|
||||||
error: (...args) => console.error('❌ ERROR', args),
|
error: (...args) => console.error('❌ ERROR', args),
|
||||||
error_string: (...args) =>
|
error_string: (...args) =>
|
||||||
console.error(
|
console.error('❌ ERROR', JSON.stringify({ ...args }, null, ' ')),
|
||||||
'❌ ERROR',
|
|
||||||
args.map((a) => JSON.stringify(a)),
|
|
||||||
),
|
|
||||||
debug: (...args) => {
|
debug: (...args) => {
|
||||||
if (process.env.DEBUG) console.log('>>> DEBUG: ', { ...args });
|
if (process.env.DEBUG) console.log('>>> DEBUG: ', { ...args });
|
||||||
},
|
},
|
||||||
debug_string: (...args) => {
|
debug_string: (...args) => {
|
||||||
if (process.env.DEBUG)
|
if (process.env.DEBUG)
|
||||||
console.log('>>> DEBUG: ', JSON.stringify({ ...args }));
|
console.log('>>> DEBUG: ', JSON.stringify({ ...args }, null, ' '));
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -60,7 +58,8 @@ process.on('unhandledRejection', handleFailure);
|
|||||||
const extract_all_links = (markdown) => {
|
const extract_all_links = (markdown) => {
|
||||||
// if you have a problem and you try to solve it with a regex,
|
// if you have a problem and you try to solve it with a regex,
|
||||||
// now you have two problems
|
// now you have two problems
|
||||||
const re = /(((https:(?:\/\/)?)(?:[-;:&=+$,\w]+@)?[A-Za-z0-9.-]+|(?:www\.|[-;:&=+$,\w]+@)[A-Za-z0-9.-]+)((?:\/[+~%/.\w\-_]*)?\??(?:[-+=&;%@.\w_]*)#?(?:[.!/\\\w]*))?)/g;
|
// TODO: replace this mess with a mardown parser ?
|
||||||
|
const re = /(((https:(?:\/\/)?)(?:[-;:&=+$,\w]+@)?[A-Za-z0-9.-]+|(?:www\.|[-;:&=+$,\w]+@)[A-Za-z0-9.-]+)((?:\/[+~%/.\w\-_]*)?\??(?:[-+=&;%@.\w_]*)#?(?:[.!/@\-\\\w]*))?)/g;
|
||||||
return markdown.match(re);
|
return markdown.match(re);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -139,10 +138,12 @@ const generate_GQL_query = (arr) =>
|
|||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
const markdown = await fs.readFile(README, 'utf8');
|
const markdown = await fs.readFile(README, 'utf8');
|
||||||
const links = extract_all_links(markdown);
|
let links = extract_all_links(markdown);
|
||||||
|
links = links.filter((l) => !exclude[l]); // exclude websites
|
||||||
|
|
||||||
const duplicates = find_duplicates(links);
|
const duplicates = find_duplicates(links);
|
||||||
if (duplicates.length > 0) {
|
if (duplicates.length > 0) {
|
||||||
LOG.error('duplicates', duplicates);
|
LOG.error_string({ duplicates });
|
||||||
}
|
}
|
||||||
const [github_links, other_links] = partition(links, (link) =>
|
const [github_links, other_links] = partition(links, (link) =>
|
||||||
link.startsWith('https://github.com'),
|
link.startsWith('https://github.com'),
|
||||||
@ -155,7 +156,7 @@ async function main() {
|
|||||||
BATCH_SIZE: 8,
|
BATCH_SIZE: 8,
|
||||||
});
|
});
|
||||||
if (other_links_error.length > 0) {
|
if (other_links_error.length > 0) {
|
||||||
LOG.error('other_links_error', other_links_error);
|
LOG.error({ other_links_error });
|
||||||
}
|
}
|
||||||
|
|
||||||
const repos = extract_repos(github_links);
|
const repos = extract_repos(github_links);
|
||||||
|
Loading…
Reference in New Issue
Block a user