mirror of
				https://github.com/NginxProxyManager/nginx-proxy-manager.git
				synced 2025-10-31 15:53:33 +00:00 
			
		
		
		
	Refactor certbot plugins install
- Added a script to install every single plugin, used in development and debugging - Improved certbot plugin install commands - Adjusted some version for plugins to install properly - It's noted that some plugins require deps that do not match other plugins, however these use cases should be extremely rare
This commit is contained in:
		| @@ -22,7 +22,7 @@ | ||||
|                         <div class="mb-3 test-domains-container"> | ||||
|                             <button type="button" class="btn btn-secondary test-domains col-sm-12"><%- i18n('certificates', 'test-reachability') %></button> | ||||
|                             <div class="text-secondary small"> | ||||
|                                 <i class="fe fe-info"></i>  | ||||
|                                 <i class="fe fe-info"></i> | ||||
|                                 <%- i18n('certificates', 'reachability-info') %> | ||||
|                             </div> | ||||
|                         </div> | ||||
| @@ -38,11 +38,11 @@ | ||||
|                     <div class="col-sm-12 col-md-12"> | ||||
|                         <div class="form-group"> | ||||
|                             <label class="custom-switch"> | ||||
|                                 <input  | ||||
|                                     type="checkbox"  | ||||
|                                     class="custom-switch-input"  | ||||
|                                     name="meta[dns_challenge]"  | ||||
|                                     value="1"  | ||||
|                                 <input | ||||
|                                     type="checkbox" | ||||
|                                     class="custom-switch-input" | ||||
|                                     name="meta[dns_challenge]" | ||||
|                                     value="1" | ||||
|                                     <%- getUseDnsChallenge() ? 'checked' : '' %> | ||||
|                                 > | ||||
|                                 <span class="custom-switch-indicator"></span> | ||||
| @@ -59,22 +59,22 @@ | ||||
|                                 <div class="col-sm-12 col-md-12"> | ||||
|                                     <div class="form-group"> | ||||
|                                         <label class="form-label"><%- i18n('ssl', 'dns-provider') %> <span class="form-required">*</span></label> | ||||
|                                         <select  | ||||
|                                             name="meta[dns_provider]"  | ||||
|                                         <select | ||||
|                                             name="meta[dns_provider]" | ||||
|                                             id="dns_provider" | ||||
|                                             class="form-control custom-select" | ||||
|                                         > | ||||
|                                             <option  | ||||
|                                                 value=""  | ||||
|                                                 disabled  | ||||
|                                             <option | ||||
|                                                 value="" | ||||
|                                                 disabled | ||||
|                                                 hidden | ||||
|                                                 <%- getDnsProvider() === null ? 'selected' : '' %> | ||||
|                                             >Please Choose...</option> | ||||
|                                             <% _.each(dns_plugins, function(plugin_info, plugin_name){ %> | ||||
|                                             <option  | ||||
|                                             <option | ||||
|                                                 value="<%- plugin_name %>" | ||||
|                                                 <%- getDnsProvider() === plugin_name ? 'selected' : '' %> | ||||
|                                             ><%- plugin_info.display_name %></option> | ||||
|                                             ><%- plugin_info.name %></option> | ||||
|                                             <% }); %> | ||||
|                                         </select> | ||||
|                                     </div> | ||||
| @@ -86,17 +86,17 @@ | ||||
|                                 <div class="col-sm-12 col-md-12"> | ||||
|                                     <div class="form-group"> | ||||
|                                         <label class="form-label"><%- i18n('ssl', 'credentials-file-content') %> <span class="form-required">*</span></label> | ||||
|                                         <textarea  | ||||
|                                             name="meta[dns_provider_credentials]"  | ||||
|                                             class="form-control text-monospace"  | ||||
|                                             id="dns_provider_credentials"  | ||||
|                                         <textarea | ||||
|                                             name="meta[dns_provider_credentials]" | ||||
|                                             class="form-control text-monospace" | ||||
|                                             id="dns_provider_credentials" | ||||
|                                         ><%- getDnsProviderCredentials() %></textarea> | ||||
|                                         <div class="text-secondary small"> | ||||
|                                             <i class="fe fe-info"></i>  | ||||
|                                             <i class="fe fe-info"></i> | ||||
|                                             <%= i18n('ssl', 'credentials-file-content-info') %> | ||||
|                                         </div> | ||||
|                                         <div class="text-red small"> | ||||
|                                             <i class="fe fe-alert-triangle"></i>  | ||||
|                                             <i class="fe fe-alert-triangle"></i> | ||||
|                                             <%= i18n('ssl', 'stored-as-plaintext-info') %> | ||||
|                                         </div> | ||||
|                                     </div> | ||||
| @@ -108,16 +108,16 @@ | ||||
|                                 <div class="col-sm-12 col-md-12"> | ||||
|                                     <div class="form-group mb-0"> | ||||
|                                         <label class="form-label"><%- i18n('ssl', 'propagation-seconds') %></label> | ||||
|                                         <input  | ||||
|                                         <input | ||||
|                                             type="number" | ||||
|                                             min="0" | ||||
|                                             name="meta[propagation_seconds]"  | ||||
|                                             class="form-control"  | ||||
|                                             id="propagation_seconds"  | ||||
|                                             name="meta[propagation_seconds]" | ||||
|                                             class="form-control" | ||||
|                                             id="propagation_seconds" | ||||
|                                             value="<%- getPropagationSeconds() %>" | ||||
|                                         > | ||||
|                                         <div class="text-secondary small"> | ||||
|                                             <i class="fe fe-info"></i>  | ||||
|                                             <i class="fe fe-info"></i> | ||||
|                                             <%= i18n('ssl', 'propagation-seconds-info') %> | ||||
|                                         </div> | ||||
|                                     </div> | ||||
|   | ||||
| @@ -11,7 +11,7 @@ require('selectize'); | ||||
|  | ||||
| function sortProvidersAlphabetically(obj) { | ||||
|     return Object.entries(obj) | ||||
|         .sort((a,b) => a[1].display_name.toLowerCase() > b[1].display_name.toLowerCase()) | ||||
|         .sort((a,b) => a[1].name.toLowerCase() > b[1].name.toLowerCase()) | ||||
|         .reduce((result, entry) => { | ||||
|             result[entry[0]] = entry[1]; | ||||
|             return result; | ||||
| @@ -47,7 +47,7 @@ module.exports = Mn.View.extend({ | ||||
|         other_intermediate_certificate:       '#other_intermediate_certificate', | ||||
|         other_intermediate_certificate_label: '#other_intermediate_certificate_label' | ||||
|     }, | ||||
|      | ||||
|  | ||||
|     events: { | ||||
|         'change @ui.dns_challenge_switch': function () { | ||||
|             const checked = this.ui.dns_challenge_switch.prop('checked'); | ||||
| @@ -63,7 +63,7 @@ module.exports = Mn.View.extend({ | ||||
|                 this.ui.dns_provider.prop('required', false); | ||||
|                 this.ui.dns_provider_credentials.prop('required', false); | ||||
|                 this.ui.dns_challenge_content.hide(); | ||||
|                 this.ui.test_domains_container.show();             | ||||
|                 this.ui.test_domains_container.show(); | ||||
|             } | ||||
|         }, | ||||
|  | ||||
| @@ -75,10 +75,10 @@ module.exports = Mn.View.extend({ | ||||
|                 this.ui.credentials_file_content.show(); | ||||
|             } else { | ||||
|                 this.ui.dns_provider_credentials.prop('required', false); | ||||
|                 this.ui.credentials_file_content.hide();                 | ||||
|                 this.ui.credentials_file_content.hide(); | ||||
|             } | ||||
|         }, | ||||
|          | ||||
|  | ||||
|         'click @ui.save': function (e) { | ||||
|             e.preventDefault(); | ||||
|             this.ui.le_error_info.hide(); | ||||
| @@ -97,7 +97,7 @@ module.exports = Mn.View.extend({ | ||||
|                 if (typeof data.meta === 'undefined') data.meta = {}; | ||||
|  | ||||
|                 let domain_err = false; | ||||
|                 if (!data.meta.dns_challenge) {                 | ||||
|                 if (!data.meta.dns_challenge) { | ||||
|                     data.domain_names.split(',').map(function (name) { | ||||
|                         if (name.match(/\*/im)) { | ||||
|                             domain_err = true; | ||||
| @@ -119,7 +119,7 @@ module.exports = Mn.View.extend({ | ||||
|                     data.meta.dns_provider_credentials = undefined; | ||||
|                     data.meta.propagation_seconds = undefined; | ||||
|                 } else { | ||||
|                     if(data.meta.propagation_seconds === '') data.meta.propagation_seconds = undefined;  | ||||
|                     if(data.meta.propagation_seconds === '') data.meta.propagation_seconds = undefined; | ||||
|                 } | ||||
|  | ||||
|                 if (typeof data.domain_names === 'string' && data.domain_names) { | ||||
| @@ -275,7 +275,7 @@ module.exports = Mn.View.extend({ | ||||
|             createFilter: /^(?:\*\.)?(?:[^.*]+\.?)+[^.]$/ | ||||
|         }); | ||||
|         this.ui.dns_challenge_content.hide(); | ||||
|         this.ui.credentials_file_content.hide();  | ||||
|         this.ui.credentials_file_content.hide(); | ||||
|         this.ui.loader_content.hide(); | ||||
|         this.ui.le_error_info.hide(); | ||||
|         if (this.ui.domain_names[0]) { | ||||
|   | ||||
| @@ -28,7 +28,7 @@ | ||||
|     </div> | ||||
| </td> | ||||
| <td> | ||||
|     <%- i18n('ssl', provider) %><% if (meta.dns_provider) { %> - <%- dns_providers[meta.dns_provider].display_name %><% } %> | ||||
|     <%- i18n('ssl', provider) %><% if (meta.dns_provider) { %> - <%- dns_providers[meta.dns_provider].name %><% } %> | ||||
| </td> | ||||
| <td class="<%- isExpired() ? 'text-danger' : '' %>"> | ||||
|     <%- formatDbDate(expires_on, 'Do MMMM YYYY, h:mm a') %> | ||||
| @@ -51,4 +51,4 @@ | ||||
|         </div> | ||||
|     </div> | ||||
| </td> | ||||
| <% } %> | ||||
| <% } %> | ||||
|   | ||||
| @@ -78,11 +78,11 @@ | ||||
|                         <div class="col-sm-12 col-md-12 letsencrypt"> | ||||
|                             <div class="form-group"> | ||||
|                                 <label class="custom-switch"> | ||||
|                                     <input  | ||||
|                                         type="checkbox"  | ||||
|                                         class="custom-switch-input"  | ||||
|                                         name="meta[dns_challenge]"  | ||||
|                                         value="1"  | ||||
|                                     <input | ||||
|                                         type="checkbox" | ||||
|                                         class="custom-switch-input" | ||||
|                                         name="meta[dns_challenge]" | ||||
|                                         value="1" | ||||
|                                         <%- getUseDnsChallenge() ? 'checked' : '' %> | ||||
|                                     > | ||||
|                                     <span class="custom-switch-indicator"></span> | ||||
| @@ -99,22 +99,22 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'dns-provider') %> <span class="form-required">*</span></label> | ||||
|                                             <select  | ||||
|                                                 name="meta[dns_provider]"  | ||||
|                                             <select | ||||
|                                                 name="meta[dns_provider]" | ||||
|                                                 id="dns_provider" | ||||
|                                                 class="form-control custom-select" | ||||
|                                             > | ||||
|                                                 <option  | ||||
|                                                     value=""  | ||||
|                                                     disabled  | ||||
|                                                 <option | ||||
|                                                     value="" | ||||
|                                                     disabled | ||||
|                                                     hidden | ||||
|                                                     <%- getDnsProvider() === null ? 'selected' : '' %> | ||||
|                                                 >Please Choose...</option> | ||||
|                                                 <% _.each(dns_plugins, function(plugin_info, plugin_name){ %> | ||||
|                                                 <option  | ||||
|                                                 <option | ||||
|                                                     value="<%- plugin_name %>" | ||||
|                                                     <%- getDnsProvider() === plugin_name ? 'selected' : '' %> | ||||
|                                                 ><%- plugin_info.display_name %></option> | ||||
|                                                 ><%- plugin_info.name %></option> | ||||
|                                                 <% }); %> | ||||
|                                             </select> | ||||
|                                         </div> | ||||
| @@ -126,17 +126,17 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'credentials-file-content') %> <span class="form-required">*</span></label> | ||||
|                                             <textarea  | ||||
|                                                 name="meta[dns_provider_credentials]"  | ||||
|                                                 class="form-control text-monospace"  | ||||
|                                                 id="dns_provider_credentials"  | ||||
|                                             <textarea | ||||
|                                                 name="meta[dns_provider_credentials]" | ||||
|                                                 class="form-control text-monospace" | ||||
|                                                 id="dns_provider_credentials" | ||||
|                                             ><%- getDnsProviderCredentials() %></textarea> | ||||
|                                             <div class="text-secondary small"> | ||||
|                                                 <i class="fe fe-info"></i>  | ||||
|                                                 <i class="fe fe-info"></i> | ||||
|                                                 <%= i18n('ssl', 'credentials-file-content-info') %> | ||||
|                                             </div> | ||||
|                                             <div class="text-red small"> | ||||
|                                                 <i class="fe fe-alert-triangle"></i>  | ||||
|                                                 <i class="fe fe-alert-triangle"></i> | ||||
|                                                 <%= i18n('ssl', 'stored-as-plaintext-info') %> | ||||
|                                             </div> | ||||
|                                         </div> | ||||
| @@ -148,16 +148,16 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group mb-0"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'propagation-seconds') %></label> | ||||
|                                             <input  | ||||
|                                             <input | ||||
|                                                 type="number" | ||||
|                                                 min="0" | ||||
|                                                 name="meta[propagation_seconds]"  | ||||
|                                                 class="form-control"  | ||||
|                                                 id="propagation_seconds"  | ||||
|                                                 name="meta[propagation_seconds]" | ||||
|                                                 class="form-control" | ||||
|                                                 id="propagation_seconds" | ||||
|                                                 value="<%- getPropagationSeconds() %>" | ||||
|                                             > | ||||
|                                             <div class="text-secondary small"> | ||||
|                                                 <i class="fe fe-info"></i>  | ||||
|                                                 <i class="fe fe-info"></i> | ||||
|                                                 <%= i18n('ssl', 'propagation-seconds-info') %> | ||||
|                                             </div> | ||||
|                                         </div> | ||||
|   | ||||
| @@ -146,11 +146,11 @@ | ||||
|                         <div class="col-sm-12 col-md-12 letsencrypt"> | ||||
|                             <div class="form-group"> | ||||
|                                 <label class="custom-switch"> | ||||
|                                     <input  | ||||
|                                         type="checkbox"  | ||||
|                                         class="custom-switch-input"  | ||||
|                                         name="meta[dns_challenge]"  | ||||
|                                         value="1"  | ||||
|                                     <input | ||||
|                                         type="checkbox" | ||||
|                                         class="custom-switch-input" | ||||
|                                         name="meta[dns_challenge]" | ||||
|                                         value="1" | ||||
|                                         <%- getUseDnsChallenge() ? 'checked' : '' %> | ||||
|                                     > | ||||
|                                     <span class="custom-switch-indicator"></span> | ||||
| @@ -167,22 +167,22 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'dns-provider') %> <span class="form-required">*</span></label> | ||||
|                                             <select  | ||||
|                                                 name="meta[dns_provider]"  | ||||
|                                             <select | ||||
|                                                 name="meta[dns_provider]" | ||||
|                                                 id="dns_provider" | ||||
|                                                 class="form-control custom-select" | ||||
|                                             > | ||||
|                                                 <option  | ||||
|                                                     value=""  | ||||
|                                                     disabled  | ||||
|                                                 <option | ||||
|                                                     value="" | ||||
|                                                     disabled | ||||
|                                                     hidden | ||||
|                                                     <%- getDnsProvider() === null ? 'selected' : '' %> | ||||
|                                                 >Please Choose...</option> | ||||
|                                                 <% _.each(dns_plugins, function(plugin_info, plugin_name){ %> | ||||
|                                                 <option  | ||||
|                                                 <option | ||||
|                                                     value="<%- plugin_name %>" | ||||
|                                                     <%- getDnsProvider() === plugin_name ? 'selected' : '' %> | ||||
|                                                 ><%- plugin_info.display_name %></option> | ||||
|                                                 ><%- plugin_info.name %></option> | ||||
|                                                 <% }); %> | ||||
|                                             </select> | ||||
|                                         </div> | ||||
| @@ -194,17 +194,17 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'credentials-file-content') %> <span class="form-required">*</span></label> | ||||
|                                             <textarea  | ||||
|                                                 name="meta[dns_provider_credentials]"  | ||||
|                                                 class="form-control text-monospace"  | ||||
|                                                 id="dns_provider_credentials"  | ||||
|                                             <textarea | ||||
|                                                 name="meta[dns_provider_credentials]" | ||||
|                                                 class="form-control text-monospace" | ||||
|                                                 id="dns_provider_credentials" | ||||
|                                             ><%- getDnsProviderCredentials() %></textarea> | ||||
|                                             <div class="text-secondary small"> | ||||
|                                                 <i class="fe fe-info"></i>  | ||||
|                                                 <i class="fe fe-info"></i> | ||||
|                                                 <%= i18n('ssl', 'credentials-file-content-info') %> | ||||
|                                             </div> | ||||
|                                             <div class="text-red small"> | ||||
|                                                 <i class="fe fe-alert-triangle"></i>  | ||||
|                                                 <i class="fe fe-alert-triangle"></i> | ||||
|                                                 <%= i18n('ssl', 'stored-as-plaintext-info') %> | ||||
|                                             </div> | ||||
|                                         </div> | ||||
| @@ -216,16 +216,16 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group mb-0"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'propagation-seconds') %></label> | ||||
|                                             <input  | ||||
|                                             <input | ||||
|                                                 type="number" | ||||
|                                                 min="0" | ||||
|                                                 name="meta[propagation_seconds]"  | ||||
|                                                 class="form-control"  | ||||
|                                                 id="propagation_seconds"  | ||||
|                                                 name="meta[propagation_seconds]" | ||||
|                                                 class="form-control" | ||||
|                                                 id="propagation_seconds" | ||||
|                                                 value="<%- getPropagationSeconds() %>" | ||||
|                                             > | ||||
|                                             <div class="text-secondary small"> | ||||
|                                                 <i class="fe fe-info"></i>  | ||||
|                                                 <i class="fe fe-info"></i> | ||||
|                                                 <%= i18n('ssl', 'propagation-seconds-info') %> | ||||
|                                             </div> | ||||
|                                         </div> | ||||
|   | ||||
| @@ -125,11 +125,11 @@ | ||||
|                         <div class="col-sm-12 col-md-12 letsencrypt"> | ||||
|                             <div class="form-group"> | ||||
|                                 <label class="custom-switch"> | ||||
|                                     <input  | ||||
|                                         type="checkbox"  | ||||
|                                         class="custom-switch-input"  | ||||
|                                         name="meta[dns_challenge]"  | ||||
|                                         value="1"  | ||||
|                                     <input | ||||
|                                         type="checkbox" | ||||
|                                         class="custom-switch-input" | ||||
|                                         name="meta[dns_challenge]" | ||||
|                                         value="1" | ||||
|                                         <%- getUseDnsChallenge() ? 'checked' : '' %> | ||||
|                                     > | ||||
|                                     <span class="custom-switch-indicator"></span> | ||||
| @@ -146,22 +146,22 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'dns-provider') %> <span class="form-required">*</span></label> | ||||
|                                             <select  | ||||
|                                                 name="meta[dns_provider]"  | ||||
|                                             <select | ||||
|                                                 name="meta[dns_provider]" | ||||
|                                                 id="dns_provider" | ||||
|                                                 class="form-control custom-select" | ||||
|                                             > | ||||
|                                                 <option  | ||||
|                                                     value=""  | ||||
|                                                     disabled  | ||||
|                                                 <option | ||||
|                                                     value="" | ||||
|                                                     disabled | ||||
|                                                     hidden | ||||
|                                                     <%- getDnsProvider() === null ? 'selected' : '' %> | ||||
|                                                 >Please Choose...</option> | ||||
|                                                 <% _.each(dns_plugins, function(plugin_info, plugin_name){ %> | ||||
|                                                 <option  | ||||
|                                                 <option | ||||
|                                                     value="<%- plugin_name %>" | ||||
|                                                     <%- getDnsProvider() === plugin_name ? 'selected' : '' %> | ||||
|                                                 ><%- plugin_info.display_name %></option> | ||||
|                                                 ><%- plugin_info.name %></option> | ||||
|                                                 <% }); %> | ||||
|                                             </select> | ||||
|                                         </div> | ||||
| @@ -173,17 +173,17 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'credentials-file-content') %> <span class="form-required">*</span></label> | ||||
|                                             <textarea  | ||||
|                                                 name="meta[dns_provider_credentials]"  | ||||
|                                                 class="form-control text-monospace"  | ||||
|                                                 id="dns_provider_credentials"  | ||||
|                                             <textarea | ||||
|                                                 name="meta[dns_provider_credentials]" | ||||
|                                                 class="form-control text-monospace" | ||||
|                                                 id="dns_provider_credentials" | ||||
|                                             ><%- getDnsProviderCredentials() %></textarea> | ||||
|                                             <div class="text-secondary small"> | ||||
|                                                 <i class="fe fe-info"></i>  | ||||
|                                                 <i class="fe fe-info"></i> | ||||
|                                                 <%= i18n('ssl', 'credentials-file-content-info') %> | ||||
|                                             </div> | ||||
|                                             <div class="text-red small"> | ||||
|                                                 <i class="fe fe-alert-triangle"></i>  | ||||
|                                                 <i class="fe fe-alert-triangle"></i> | ||||
|                                                 <%= i18n('ssl', 'stored-as-plaintext-info') %> | ||||
|                                             </div> | ||||
|                                         </div> | ||||
| @@ -195,16 +195,16 @@ | ||||
|                                     <div class="col-sm-12 col-md-12"> | ||||
|                                         <div class="form-group mb-0"> | ||||
|                                             <label class="form-label"><%- i18n('ssl', 'propagation-seconds') %></label> | ||||
|                                             <input  | ||||
|                                             <input | ||||
|                                                 type="number" | ||||
|                                                 min="0" | ||||
|                                                 name="meta[propagation_seconds]"  | ||||
|                                                 class="form-control"  | ||||
|                                                 id="propagation_seconds"  | ||||
|                                                 name="meta[propagation_seconds]" | ||||
|                                                 class="form-control" | ||||
|                                                 id="propagation_seconds" | ||||
|                                                 value="<%- getPropagationSeconds() %>" | ||||
|                                             > | ||||
|                                             <div class="text-secondary small"> | ||||
|                                                 <i class="fe fe-info"></i>  | ||||
|                                                 <i class="fe fe-info"></i> | ||||
|                                                 <%= i18n('ssl', 'propagation-seconds-info') %> | ||||
|                                             </div> | ||||
|                                         </div> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user