DEV Community

dadolhay
dadolhay

Posted on

 

Week 4, creating an order

This week I have worked on creating an order with Let's encrypt in manual mode.

Main work

The most appropriate format for the code seemed to be an ES6 class.
The class works as follows:

  • The constructor creates a new empty instance
  • the initialize async instance function instantiates a let's encrypt client (node-acme-client instance) and stores it in a private instance variable. It also verifies / creates a let's encrypt account based on the PEM that it got in a docker secret
  • the createOrder async instance function is then called, which creates an order with the provider, detailing all the identifiers (domains) that the certificate should sign. It then calls internally another function, that loops through all of the "authorizations", and retrieves the appropriate DNS challenges from the acme server.

The next task will be to create a function that is able to verify the DNS propagation, and complete the challenges with Let's encrypt.

Static code analysis

Based on our discussions with the team, I also added some additional eslint rules and reformatted the code to match

Being the Sheriff

I worked through a lot of PRs, and wrote a bunch of reviews

Top comments (0)

Here is a post you might want to check out:

Regex for lazy developers

regex for lazy devs

Sorry for the callout 😆