Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I followed the style of the openvpn-install repository and used some of its code. Thanks to everyone that contributed there.
The other additions are:
To consider:
The headless addition of an user will block the script waiting for a free IP if the one inserted is already in use. I'd suggest to handle the IP management of the clients automatically as happens with OpenVPN and users that want a specific IP for a device can manually edit the configuration files. Other suggestions, for example exiting instead of asking again for an IP (it isn't very friendly when the script is run interactively), are welcome.
The headless revocation of an user isn't friendly because we ask for a client number instead of a client name. openvpn-install repo will need this change too.
Changes aren't tested. PR is a draft while waiting for feedback on the above considerations @angristan .
Fix #21
EDIT: I've pushed some commits that would help with the above issues. Phrasing can be made more clear, but it's ready for review.