フィードを購読する

gluster Open source projects survive off new contributions and new contributors, bringing new ideas and new focus to their work. A new project starts with one person or a few people putting code out for other people to use and contribute to, a successful project creates a pathway for contribution.

In Gluster, we've focused the past two years on making our infrastructure effective for contributing, and inviting more contributors into our infrastructure. Open source isn't just about opening up your code—it's about building a supporting infrastructure that invites people to contribute. For projects to be successful, the community needs to be able to participate in the governance, the documentation, the code, and even the hosting. Said another way, a healthy project can attract more diverse skillsets with more transparency.

This is a really hard thing to do. A project can have a goal for "an open everything," but infrastructure is one of the last things that can be opened up. Usually, only a few people run the infrastructure. A certain level of trust is needed before granting a contributor access to project infrastructure—because that's where everyone consumes your project from.

However, infrastructure tools like Ansible, Chef, and Puppet have become widely adopted and changed this. It's now possible to open source project infrastructure as code, with the same levels of access as any other contributor. This makes the process visible to contributors, allowing a pathway for contribution that might not be strict project code. You're no longer tied to the problem of only a limited amount of high-level contributors who have access.

In keeping with this, here are a few things that we've learned while working on Gluster:

  • Make decisions in the open: Use public mailing lists for infrastructure-related discussion and planning. Involve the community in every part of the decision-making process. Specifically, avoid announcing decisions made in private.
  • Define infrastructure as code: Use Ansible, Puppet, or any other configuration management tool that enables contributors to drive infrastructure development. Use Jenkins Job Builder to define Jenkins jobs. Developers and the wider community can define new jobs with little overhead.
  • Define ownership of infrastructure: Define clear ownership of infrastructure with public post-mortems for failures. This transparency will help your community trust you to do your jobs.
  • Clear a path to contribution: Define a clear path for infrastructure contributions.

For now, we're working on improving our test infrastructure, but the best part about this—we're never going to be "done" with our infrastructure work, we treat it like part of the project and it's always welcome to new input as well.


執筆者紹介

UI_Icon-Red_Hat-Close-A-Black-RGB

チャンネル別に見る

automation icon

自動化

テクノロジー、チームおよび環境に関する IT 自動化の最新情報

AI icon

AI (人工知能)

お客様が AI ワークロードをどこでも自由に実行することを可能にするプラットフォームについてのアップデート

open hybrid cloud icon

オープン・ハイブリッドクラウド

ハイブリッドクラウドで柔軟に未来を築く方法をご確認ください。

security icon

セキュリティ

環境やテクノロジー全体に及ぶリスクを軽減する方法に関する最新情報

edge icon

エッジコンピューティング

エッジでの運用を単純化するプラットフォームのアップデート

Infrastructure icon

インフラストラクチャ

世界有数のエンタープライズ向け Linux プラットフォームの最新情報

application development icon

アプリケーション

アプリケーションの最も困難な課題に対する Red Hat ソリューションの詳細

Original series icon

オリジナル番組

エンタープライズ向けテクノロジーのメーカーやリーダーによるストーリー