OpenBSD Ports - Integrating Third Party Applications [pdf]
jggimi.homeip.net
jggimi.homeip.net
Overall, I'd say the process of making ports is slightly easier than packaging on some other platforms, except when you encounter exceptions--which can happen with software written with an expectation of Linux.
You might find portgen(1) somewhat useful. For example, try something like this:
doas portgen p5 Net::Hadoop::YARN