Compare commits

...

11 Commits

Author SHA1 Message Date
luandro
348fdff5ac Merge 8cfb9a99b3 into 498109addb 2025-01-30 23:26:13 -08:00
jc21
498109addb Merge pull request #4310 from NginxProxyManager/dependabot/npm_and_yarn/docs/vite-5.4.14
All checks were successful
Close stale issues and PRs / stale (push) Successful in 3s
Bump vite from 5.4.8 to 5.4.14 in /docs
2025-01-28 18:08:46 +10:00
jc21
3f3aacd7ec Merge pull request #4274 from Dim145/develop
[Postgres] fix error in access_list get
2025-01-28 14:03:07 +10:00
dependabot[bot]
bb4ecf812d Bump vite from 5.4.8 to 5.4.14 in /docs
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.8 to 5.4.14.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.14/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.14/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 07:09:04 +00:00
Jamie Curnow
9687e9e450 Use previous version of powerdns image, newer version is broken
All checks were successful
Close stale issues and PRs / stale (push) Successful in 3s
2025-01-07 10:30:08 +10:00
Jamie Curnow
5a234bb88c Fix incorrect test folder in ci results 2025-01-07 08:13:04 +10:00
jc21
4de4b65036 Merge pull request #4252 from GergelyGombai/develop
Add Gcore DNS Provider
2025-01-07 07:54:44 +10:00
dim145
f1c97c7c36 fix: add missing group_by clause for access_list get 2025-01-03 00:39:29 +01:00
ComradeBlin
73110d5e1e Update Gcore apikey format
I managed to mis-write the format in my previous commit
2024-12-22 01:44:52 +01:00
ComradeBlin
356b98bf7e Add Gcore DNS Provider 2024-12-22 01:02:47 +01:00
luandro
8cfb9a99b3 Added Portuguese translations 2021-10-17 09:04:31 -03:00
7 changed files with 290 additions and 9 deletions

6
Jenkinsfile vendored
View File

@@ -128,7 +128,7 @@ pipeline {
sh 'docker-compose down --remove-orphans --volumes -t 30 || true'
}
unstable {
dir(path: 'testing/results') {
dir(path: 'test/results') {
archiveArtifacts(allowEmptyArchive: true, artifacts: '**/*', excludes: '**/*.xml')
}
}
@@ -161,7 +161,7 @@ pipeline {
sh 'docker-compose down --remove-orphans --volumes -t 30 || true'
}
unstable {
dir(path: 'testing/results') {
dir(path: 'test/results') {
archiveArtifacts(allowEmptyArchive: true, artifacts: '**/*', excludes: '**/*.xml')
}
}
@@ -199,7 +199,7 @@ pipeline {
sh 'docker-compose down --remove-orphans --volumes -t 30 || true'
}
unstable {
dir(path: 'testing/results') {
dir(path: 'test/results') {
archiveArtifacts(allowEmptyArchive: true, artifacts: '**/*', excludes: '**/*.xml')
}
}

View File

@@ -258,6 +258,7 @@ const internalAccessList = {
})
.where('access_list.is_deleted', 0)
.andWhere('access_list.id', data.id)
.groupBy('access_list.id')
.allowGraph('[owner,items,clients,proxy_hosts.[certificate,access_list.[clients,items]]]')
.first();

View File

@@ -40,7 +40,7 @@ services:
- ca.internal
pdns:
image: pschiffe/pdns-mysql
image: pschiffe/pdns-mysql:4.8
volumes:
- '/etc/localtime:/etc/localtime:ro'
environment:

View File

@@ -132,7 +132,7 @@ services:
- 8128:3128
pdns:
image: pschiffe/pdns-mysql
image: pschiffe/pdns-mysql:4.8
container_name: npm2dev.pdns
volumes:
- '/etc/localtime:/etc/localtime:ro'
@@ -218,7 +218,7 @@ services:
env_file:
- ci.env
ports:
- 9000:9000
- 9000:9000
depends_on:
- authentik-redis
- db-postgres

View File

@@ -1065,9 +1065,9 @@ vfile@^6.0.0:
vfile-message "^4.0.0"
vite@^5.4.8:
version "5.4.8"
resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.8.tgz#af548ce1c211b2785478d3ba3e8da51e39a287e8"
integrity sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==
version "5.4.14"
resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.14.tgz#ff8255edb02134df180dcfca1916c37a6abe8408"
integrity sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==
dependencies:
esbuild "^0.21.3"
postcss "^8.4.43"

View File

@@ -292,5 +292,277 @@
"default-site-html": "Custom Page",
"default-site-redirect": "Redirect"
}
},
"pt": {
"str": {
"email-address": "Endereço de e-mail",
"username": "Nome do usuário",
"password": "Senha",
"sign-in": "Entrar",
"sign-out": "Sair",
"try-again": "Tente novamente",
"name": "Nome",
"email": "O email",
"roles": "Papéis",
"created-on": "Data de criação}",
"save": "Salve ",
"cancel": "Cancelar",
"close": "Fechar",
"enable": "Permitir",
"disable": "Desativar",
"sure": "Sim eu tenho certeza",
"disabled": "Desabilitada",
"choose-file": "Escolher arquivo",
"source": "Fonte",
"destination": "Destino",
"ssl": "Ssl.",
"access": "Acesso",
"public": "Pública",
"edit": "Editar",
"delete": "Excluir",
"logs": "Histórica",
"status": "Status",
"online": "Conectadas",
"offline": "Desligada",
"unknown": "Desconhecida",
"expires": "Expira",
"value": "Valor",
"please-wait": "Por favor, espere...",
"all": "Tudo",
"any": "Alguma"
},
"login": {
"title": "Faça login na sua conta"
},
"main": {
"app": "NGINX Proxy Manager.",
"version": "v {version}",
"welcome": "Bem-vindo ao NGINX Proxy Manager",
"logged-in": "Você está logado como {nome}",
"unknown-error": "Erro ao carregar coisas.Por favor recarregue o aplicativo.",
"unknown-user": "Usuário desconhecido",
"sign-in-as": "Assine de volta como {nome}"
},
"roles": {
"title": "Papéis",
"admin": "Administradora",
"user": "Helicóptero Apache"
},
"menu": {
"dashboard": "Painel",
"hosts": "Anfitriãs"
},
"footer": {
"fork-me": "Garfo me no github",
"copy": "&cópia de;2021 <a href=\"{url}\" target=\"_blank\"> jc21.com </a>.",
"theme": "Tema por <a href=\" {url}\" target=\"_blank\"> taber </a>"
},
"dashboard": {
"title": "Oi {name}"
},
"all-hosts": {
"empty-subtitle": "{Gerenciar, selecione, True {Por que você não cria um?} Outros {e você não tem permissão para criar um.}}",
"details": "Detalhes",
"enable-ssl": "Ativar SSL.",
"force-ssl": "Forçar SSL.",
"http2-support": "Suporte HTTP / 2",
"domain-names": "Nomes de domínio",
"cert-provider": "Provedor de certificados",
"block-exploits": "Bloquear explorações comuns",
"caching-enabled": "Ativos de cache",
"ssl-certificate": "Certificado SSL.",
"none": "Nenhum",
"new-cert": "Solicite um novo certificado SSL",
"with-le": "com vamos criptografar",
"no-ssl": "Este host não usará HTTPS",
"advanced": "Avançada",
"advanced-warning": "Digite sua configuração personalizada do Nginx aqui por sua conta e risco!",
"advanced-config": "Configuração personalizada do NGINX.",
"hsts-enabled": "HSTs habilitado",
"hsts-subdomains": "Subdomínios do HSTS.",
"locations": "Locais personalizados"
},
"locations": {
"new_location": "Adicionar local",
"path": "/caminho",
"location_label": "Definir localização",
"delete": "Excluir"
},
"ssl": {
"letsencrypt": "Vamos criptografar",
"other": "Personalizada",
"none": "Apenas http",
"letsencrypt-email": "Endereço de e-mail para vamos criptografar",
"letsencrypt-agree": "Eu concordo com o <a href=\" {url}\" target=\"_blank\"> Vamos criptografar os Termos de Serviço </a>",
"delete-ssl": "Os certificados SSL anexados não serão removidos, eles precisarão ser removidos manualmente.",
"hosts-warning": "Esses domínios já devem estar configurados para apontar para esta instalação",
"no-wildcard-without-dns": "Não é possível solicitar Vamos criptografar o certificado para domínios curinga quando não estiver usando o DNS Challenge",
"dns-challenge": "Use um Desafio DNS",
"certbot-warning": "Esta seção requer algum conhecimento sobre o Certbot e seus plugins DNS.Por favor, consulte a respectiva documentação dos plugins.",
"dns-provider": "Provedor DNS.",
"please-choose": "Por favor escolha...",
"credentials-file-content": "Conteúdo do arquivo de credenciais",
"credentials-file-content-info": "Este plugin requer um arquivo de configuração contendo um token de API ou outras credenciais ao seu provedor",
"stored-as-plaintext-info": "Esses dados serão armazenados como texto simples no banco de dados e em um arquivo!",
"propagation-seconds": "Segundos de propagação",
"propagation-seconds-info": "Deixe vazio para usar o valor padrão dos plugins.Número de segundos para esperar pela propagação DNS.",
"processing-info": "Processamento ... Isso pode demorar alguns minutos.",
"passphrase-protection-support-info": "Os arquivos-chave protegidos com uma frase secreta não são suportados."
},
"proxy-hosts": {
"title": "Anfitriões proxy.",
"empty": "Não há hospedeiras proxy",
"add": "Adicionar anfitrião proxy.",
"form-title": "{ID, selecione, indefinido {novo} outro {editar}} host proxy",
"forward-scheme": "Esquema",
"forward-host": "Encaminhar HostName / IP",
"forward-port": "Port",
"delete": "Excluir host proxy.",
"delete-confirm": "Tem certeza de que deseja excluir o host proxy para: <strong> {domínios} </ strong>?",
"help-title": "O que é um anfitrião proxy?",
"help-content": "Um host proxy é o endpoint recebido para um serviço da Web que você deseja encaminhar.\nEle fornece rescisão SSL opcional para o seu serviço que talvez não tenha suporte a SSL embutido.\nOs hosts de proxy são o uso mais comum para o NGINX Proxy Manager.",
"access-list": "Lista de Acesso",
"allow-websocket-upgrade": "Suporte WebSockets.",
"ignore-invalid-upstream-ssl": "Ignorar SSL inválido.",
"custom-forward-host-help": "Adicione um caminho para encaminhamento de subpasta.\nExemplo: 203.0.113.25/PATH."
},
"redirection-hosts": {
"title": "Anfitriões de redirecionamento.",
"empty": "Não há anfitriões de redirecionamento",
"add": "Adicionar anfitrião de redirecionamento",
"form-title": "{ID, selecione, indefinido {novo} outro {editar}} redirecionamento host",
"forward-scheme": "Esquema",
"forward-http-status-code": "Código HTTP.",
"forward-domain": "Domínio para a frente.",
"preserve-path": "Preservar o caminho",
"delete": "Excluir host proxy.",
"delete-confirm": "Tem certeza de que deseja excluir o host de redirecionamento para: <strong> {domínios} </ strong>?",
"help-title": "O que é um host de redirecionamento?",
"help-content": "Um host de redirecionamento irá redirecionar solicitações do domínio recebido e empurrar o visualizador para outro domínio.\nO motivo mais comum para usar este tipo de host é quando o seu site muda domínios, mas você ainda tem mecanismo de pesquisa ou links referenciadores apontando para o antigo domínio."
},
"dead-hosts": {
"title": "404 anfitriões",
"empty": "Não há 404 hosts",
"add": "Adicionar 404 anfitrião",
"form-title": "{ID, selecione, indefinido {novo} outro {editar}} 404 host",
"delete": "Excluir 404 host",
"delete-confirm": "Tem certeza de que deseja excluir este host 404?",
"help-title": "O que é um hospedeiro 404?",
"help-content": "Um host 404 é simplesmente uma configuração de host que mostra uma página 404.\nIsso pode ser útil quando seu domínio está listado em mecanismos de pesquisa e você deseja fornecer uma página de erro mais agradável ou especificamente para informar os indexadores de pesquisa que as páginas de domínio não existem mais.\nOutro benefício de ter esse host é rastrear os logs para atingir e visualizar os referenciadores."
},
"streams": {
"title": "Riachos.",
"empty": "Não há fluxos",
"add": "Adicionar stream.",
"form-title": "{ID, selecione, indefinido {novo} outro {editar}} stream",
"incoming-port": "Porta de entrada",
"forwarding-host": "Anfitrião para frente.",
"forwarding-port": "Port",
"tcp-forwarding": "Encaminhamento de tcp.",
"udp-forwarding": "Encaminhamento UDP.",
"forward-type-error": "Pelo menos um tipo de protocolo deve ser ativado",
"protocol": "Protocolo",
"tcp": "Tcp.",
"udp": "UDP.",
"delete": "Excluir fluxo",
"delete-confirm": "Tem certeza de que deseja excluir este fluxo?",
"help-title": "O que é um fluxo?",
"help-content": "Um recurso relativamente novo para o NginX, um fluxo servirá para encaminhar o tráfego TCP / UDP diretamente para outro computador na rede.\nSe você estiver executando servidores de jogos, os servidores FTP ou SSH, isso pode ser útil."
},
"certificates": {
"title": "Certificados SSL.",
"empty": "Não há certificados SSL",
"add": "Adicionar certificado SSL.",
"form-title": "Adicionar {provedor, selecione, Letsencrypt {Vamos criptografar} Outros {Custom}} Certificado",
"delete": "Exclua o certificado SSL.",
"delete-confirm": "Tem certeza de que deseja excluir este certificado SSL?Algum hosts usando ele precisará ser atualizado mais tarde.",
"help-title": "Certificados SSL.",
"help-content": "Certificados SSL (conhecidos corretamente como certificados TLS) são um formulário de chave de criptografia que permite que seu site seja criptografado para o usuário final.\nO NPM usa um serviço chamado Vamos criptografar para emitir certificados SSL gratuitamente.\nSe você tiver algum tipo de informação pessoal, senhas ou dados confidenciais por trás da NPM, é provavelmente uma boa ideia usar um certificado.\nO NPM também suporta a autenticação DNS para se você não estiver executando seu site voltado para a Internet, ou se você quiser um certificado curinga.",
"other-certificate": "Certificado",
"other-certificate-key": "Certificado Key.",
"other-intermediate-certificate": "Certificado Intermediário",
"force-renew": "Renovar agora",
"download": "Download",
"renew-title": "Renew Let'Sencrypt Certificado"
},
"access-lists": {
"title": "Listas de acesso",
"empty": "Não há listas de acesso",
"add": "Adicionar lista de acesso",
"form-title": "{ID, selecione, indefinido {novo} outra {editar}} lista de acesso",
"delete": "Excluir lista de acesso",
"delete-confirm": "Tem certeza de que deseja excluir esta lista de acesso?",
"public": "Publicamente acessível",
"public-sub": "Sem restrições de acesso",
"help-title": "O que é uma lista de acesso?",
"help-content": "As listas de acesso fornecem uma lista negra ou whitelist de endereços IP específicos do cliente, juntamente com a autenticação para os hosts de proxy via autenticação básica HTTP.\nVocê pode configurar várias regras de cliente, nomes de usuários e senhas para uma única lista de acesso e, em seguida, aplicar isso a um host de proxy.\nIsso é mais útil para serviços da Web encaminhados que não possuem mecanismos de autenticação incorporados ou que você deseja proteger do acesso por clientes desconhecidos.",
"item-count": "{Contagem} {Contagem, selecione, 1 {user} Other {Users}}",
"client-count": "{Contagem} {Contagem, Selecione, 1 {Regra} Outras {regras}}",
"proxy-host-count": "{Contagem} {Contagem, Select, 1 {proxy host} Outros {proxy hosts}}",
"delete-has-hosts": "Esta lista de acesso está associada a hosts de proxy {Contagem}.Eles se tornarão disponíveis publicamente após a exclusão.",
"details": "Detalhes",
"authorization": "Autorização",
"access": "Acesso",
"satisfy": "Satisfazer",
"satisfy-any": "Satisfazer qualquer",
"pass-auth": "Passe autenticação para hospedar",
"access-add": "Adicionar",
"auth-add": "Adicionar"
},
"users": {
"title": "Comercial",
"default_error": "O endereço de e-mail padrão deve ser alterado",
"add": "Adicionar usuário",
"nickname": "Apelido",
"full-name": "Nome completo",
"edit-details": "Editar Detalhes",
"change-password": "Mudar senha",
"edit-permissions": "Editar permissões",
"sign-in-as": "Faça login como usuário",
"form-title": "{ID, selecione, indefinido {novo} outro {editar}} usuário",
"delete": "Excluir {nome, selecione, indefinido {user} Outro {{name}}}",
"delete-confirm": "Tem certeza de que deseja excluir <strong> {name} </ strong>?",
"password-title": "Alterar senha {self, selecione, false {para {name}} outro {}}",
"current-password": "Senha atual",
"new-password": "Nova Senha",
"confirm-password": "Confirme a Senha",
"permissions-title": "Permissões para {NAME}",
"admin-perms": "Este usuário é um administrador e alguns itens não podem ser alterados",
"perms-visibility": "Visibilidade do item",
"perms-visibility-user": "Itens criados apenas",
"perms-visibility-all": "Todos os itens",
"perm-manage": "Gerenciar",
"perm-view": "Visualizar apenas",
"perm-hidden": "Escondida"
},
"audit-log": {
"title": "Log de auditoria",
"empty": "Não há logs.",
"empty-subtitle": "Assim que você ou outro usuário muda alguma coisa, a história desses eventos aparecerá aqui.",
"proxy-host": "Anfitrião proxy.",
"redirection-host": "Anfitrião de redirecionamento",
"dead-host": "404 anfitrião",
"stream": "Stream",
"user": "Do utilizador",
"certificate": "Certificado",
"access-list": "Lista de Acesso",
"created": "Criado {name}",
"updated": "Atualizado {NAME}",
"deleted": "Excluído {NAME}",
"enabled": "Ativado {NAME}",
"disabled": "Desativado {name}",
"renewed": "Renovado {name}",
"meta-title": "Detalhes do evento",
"view-meta": "Ver detalhes",
"date": "Encontro"
},
"settings": {
"title": "Definições",
"default-site": "Site padrão",
"default-site-congratulations": "Parabéns Page.",
"default-site-404": "404 Página",
"default-site-html": "Página personalizada",
"default-site-redirect": "Redirecionar."
}
}
}

View File

@@ -215,6 +215,14 @@
"credentials": "# Gandi personal access token\ndns_gandi_token=PERSONAL_ACCESS_TOKEN",
"full_plugin_name": "dns-gandi"
},
"gcore": {
"name": "Gcore DNS",
"package_name": "certbot-dns-gcore",
"version": "~=0.1.8",
"dependencies": "",
"credentials": "dns_gcore_apitoken = 0123456789abcdef0123456789abcdef01234567",
"full_plugin_name": "dns-gcore"
},
"godaddy": {
"name": "GoDaddy",
"package_name": "certbot-dns-godaddy",