mirror of
				https://github.com/NginxProxyManager/nginx-proxy-manager.git
				synced 2025-11-04 09:25:15 +00:00 
			
		
		
		
	frontend doesn't include when building in react version adds swagger for existing dns-providers endpoint
		
			
				
	
	
		
			55 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/node
 | 
						|
 | 
						|
// Usage:
 | 
						|
//   Install all plugins defined in `../certbot/dns-plugins.json`:
 | 
						|
//    ./install-certbot-plugins
 | 
						|
//   Install one or more specific plugins:
 | 
						|
//    ./install-certbot-plugins route53 cloudflare
 | 
						|
//
 | 
						|
// Usage with a running docker container:
 | 
						|
//    docker exec npm_core /command/s6-setuidgid 1000:1000 bash -c "/app/scripts/install-certbot-plugins"
 | 
						|
//
 | 
						|
 | 
						|
import batchflow from "batchflow";
 | 
						|
import dnsPlugins from "../certbot/dns-plugins.json" with { type: "json" };
 | 
						|
import { installPlugin } from "../lib/certbot.js";
 | 
						|
import { certbot as logger } from "../logger.js";
 | 
						|
 | 
						|
let hasErrors = false;
 | 
						|
const failingPlugins = [];
 | 
						|
 | 
						|
let pluginKeys = Object.keys(dnsPlugins);
 | 
						|
if (process.argv.length > 2) {
 | 
						|
	pluginKeys = process.argv.slice(2);
 | 
						|
}
 | 
						|
 | 
						|
batchflow(pluginKeys)
 | 
						|
	.sequential()
 | 
						|
	.each((i, pluginKey, next) => {
 | 
						|
		installPlugin(pluginKey)
 | 
						|
			.then(() => {
 | 
						|
				next();
 | 
						|
			})
 | 
						|
			.catch((err) => {
 | 
						|
				hasErrors = true;
 | 
						|
				failingPlugins.push(pluginKey);
 | 
						|
				next(err);
 | 
						|
			});
 | 
						|
	})
 | 
						|
	.error((err) => {
 | 
						|
		logger.error(err.message);
 | 
						|
	})
 | 
						|
	.end(() => {
 | 
						|
		if (hasErrors) {
 | 
						|
			logger.error(
 | 
						|
				"Some plugins failed to install. Please check the logs above. Failing plugins: " +
 | 
						|
					"\n - " +
 | 
						|
					failingPlugins.join("\n - "),
 | 
						|
			);
 | 
						|
			process.exit(1);
 | 
						|
		} else {
 | 
						|
			logger.complete("Plugins installed successfully");
 | 
						|
			process.exit(0);
 | 
						|
		}
 | 
						|
	});
 |