1.0.1 • Published 3 years ago

@marxlnfcs/nest-powerdns v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

NestJS PowerDNS Client

This packages implements the @marxlnfcs/powerdns package as NestJS module.

npm NPM Snyk Vulnerabilities for npm package Website

Documentation

@marxlnfcs/powerdns

Installation

npm i @marxlnfcs/nest-powerdns @marxlnfcs/powerdns

Usage

AppModule

@Module({
    imports: [
        PowerDNSModule.forRoot({
            name: 'string', // default: "default"
            baseUrl: 'http://localhost:8081',
            apiKey: 'apikey',
        }),
        PowerDNSModule.forRootAsync({
            name: 'string', // default: "default"
            useFactory: (configService: ConfigService) => ({
                baseUrl: configService.baseUrl,
                apiKey: configService.apiKey
            }),
            inject: [ConfigService]
        })
    ]
})
export class AppModule {}

AppService

@Injectable()
export class AppService {

    constructor(
    
        // for connections with name default name "default" only
        private pdnsService: PowerDNSService,
        private pdnsAdvancedService: PowerDNSAdvancedService,
        
        // for all connections
        @InjectPDNS('default') // name is optional. Default: "default"
        private pdnsService: PowerDNSService,
        
        @InjectPDNSAdvanced('default') // name is optional. Default: "default"
        private pdnsAdvancedService: PowerDNSAdvancedService,
        
    ){}
   
    getServers(){
        return this.pdnsAdvancedService.getServers();
    }
   
    getDomains(){
        return this.pdnsService.getDomains();
    }
   
}

Options

PowerDNS Options

OptionDescriptionExampleDefault
baseUrl *URL to PowerDNS-APIhttp://localhost:8081/api/v1None
apiKey *Apikey for the PowerDNS-APIapikeyNone
timeoutHTTP-Timeout50005000
proxyProxy settings for the HTTP-Client. See "Proxy settings"
rejectUnauthorizedDefines if the HTTP-Client should allow selfsigned SSL certificatesfalsefalse

Proxy options

If your application needs a proxy to communicate with the PowerDNS-API, you can define it with the proxy settings. You can either set the url or host, port and protocol.

OptionDescriptionExampleDefault
urlFull URL of the proxy server.http://localhost:8080/None
hostHostname of the proxy server.localhostNone
portPort of the proxy server.8080None
protocolHTTP-Protocol of the proxy server.httpshttp
auth.usernameUsername to authenticate with.None
auth.passwordPassword to authenticate with.None