You are viewing a single comment's thread from:

RE: Hive workflow proposal

in #hivelast year (edited)

This is how you develop software, so most of the developers should be familiar with that kind of workflow. Last weeks were crazy, and everyone worked on time pressure, but now the workflow should definitely change, and we, as a blockchain community, should promote best practices in software development.

CI/CD

Testing is crucial, and I believe we could set up minimal test coverage required before merging changes (should be possible with Gitlab CI/CD afair). Getting this information (coverage) might be quite tricky because different technologies and frameworks are used in various projects, but with Gitlab CI/CD it's doable for most of them. Also, it would be great to have merge requests approvals configured. End-to-end tests where possible.

Screenshot from 20200404 003428.png

Building and pushing docker images automatically on merges/releases is also a must. But that's quite common and easy to configure. The next step is a staging environment for some backend tools and condenser. It's a game-changer if you can review changes in a real environment, just a few minutes after MR was approved. I can help a lot in this field.

Linters

It would be great to see standardized config for eslint / prettier or equivalent for other languages. It should also be a part of the CI/CD workflow.

Git hooks

It's quite tricky to distribute git hooks, but there is an excellent tool for nodejs to achieve that: Husky. We would be able to ensure code is linted and unit tested before being pushed. This prevents many small mistakes that can give you a headache.


I'm glad we've moved to Gitlab but I'm wondering if we should use an instance managed by a private entity. Couldn't just use Gitlab SaaS?

Sort:  

I'm glad we've moved to Gitlab but I'm wondering if we should use an instance managed by a private entity. Couldn't just use Gitlab SaaS?

It would make it easier to get involved with a standard GitLab account. Who is syncad? Is that a trusted and reliable member of the community?

It's a software development company of mine that does all the work for BlockTrades (and other companies).

It's just as trustworthy as the guys who run gitlab saas, in my biased opinion.

Yeah self-hosting shows that you don't have centralization risk on a company. I hear you. gitlab.com also has a nice mirroring feature, so maybe also a good idea to set up official mirrors as well as community mirrors. Also I think GitLab is more likely to end up on Software Heritage.

Mirrors sound like a good idea.