Hacktoberfest

Hacktoberfest

Hacktoberfest is a month long celebration of open source software. It happens every year in October. During this event everyone can support open-source by contributing changes, and then earn a limited edition swag.

We invite everyone to participate and to contribute to the Jenkins project, regardless of their background and Jenkins experience. There are many ways to contribute to Jenkins during Hacktoberfest. You can work on code or documentation, contribute to localization, create new artwork, etc. You can also share your experiences with Jenkins by creating a new blogpost. Generally, any pull requests in GitHub would qualify. See the Contribute and Participate page for more information about how to contribute.

Quick start

  1. Sign-up to Hacktoberfest on the event website.

  2. Join our Gitter channel.

  3. Everything is set, just start creating pull-requests!

    • If a repository has no hacktoberfest topic set, please mention Hacktoberfest in your pull requests so we can set repository topics (see FAQ: Marking Pull requests).

Where to contribute?

Hacktoberfest 2020 update: On Oct 03, the Hacktoberfest organizers made an update to reduce spam and to introduce maintainer opt-in. We follow the same policy in the Jenkins community, and we do NOT require all maintainers to participate in Hacktoberfest.

The Jenkins project is spread across several organizations on GitHub (jenkinsci, jenkins-infra, jenkins-zh). You are welcome to contribute to any repository in any of those organizations, or any other Jenkins-related repository on GitHub. Repositories may have different contribution guidelines, review and merge policies. If you adopt Jenkins in your open-source projects (e.g. Jenkins Pipeline or Configuration as Code), it counts as well! Note that not all pull requests will automatically count towards Hacktoberfest in 2020.

Issue queries

We have marked some issues in Jenkins Jira and GitHub issues which can be handled by contributors during Hacktoberfest:

If you are a newcomer contributor, we have prepared a list of projects/components where you will get a warm welcome. All these projects have newbie-friendly tasks, contributing guidelines, and active maintainers who have committed to assist contributors and to provide quick turnaround in pull requests.

Project/component Keywords Ideas and links

Jenkins Website

Documentation,
Asciidoc,
CSS,
Ruby

Extend and improve Jenkins documentation, help to improve the website’s look&feel, create a new blogpost, a technology-specific solution page or a tutorial.

Contributing guidelines, Good first issues

Jenkins Core

Java

There is always something to improve in Jenkins core itself. You can address various issues, improve the codebase, and add new features there.

Contributing, newcomer-friendly issues

Jenkins Plugin Site

Javascript, Java, React, Gatsby

The plugin site is used to find information about 1700+ plugins available in Jenkins. It provides plugin documentation, changelogs, open issues, and other data needed for Jenkins admins and end users. We are interested to keep improving the plugin site’s UI/UX, provide more search options, and to provide deeper integration with GitHub and other services.

Jenkinsfile Runner

Java, Docker

Jenkinsfile Runner is a portable Jenkins Pipeline execution engine, currently in preview. It can run as a standalone CLI tool or as a Docker container. We invite Hacktoberfest participants to evaluate the tool, work on adding new features and demos,

Contributing, Good first issues, All open issues

Prometheus Plugin

Java, Prometheus

Jenkins Prometheus Plugin expose an endpoint (default /prometheus) with metrics where a Prometheus Server can scrape. We invite Hacktoberfest participants to evaluate the plugin, work on adding new features, and documentation.

Contributing, Good first issues, All open issues

Tekton Client Plugin

Java, Tekton, Kubernetes

The Tekton Client Plugin allows Jenkins users to trigger the creation and deletion of Tekton Pipelines and other resources. We invite Hacktoberfest participants to evaluate the plugin, work on adding new features, and documentation.

Contributing, Good first issues, All open issues

Terminology cleanup

Java, Web UI, Asciidoc, Markdown, Java

In 2016, the Jenkins community started changing the potentially offensive terminology within the project. The "slave" term was deprecated and replaced by "agent". In July 2020 we also adopted the "controller" term instead of "master", and deprecated the "whitelist/blacklist" terms. There are many places where the old terminology still needs to be replaced.

We invite contributors to join us and participate in cleaning up Jenkins documentation, Web and CLI interfaces, and the codebase:

  • JENKINS-42816 - Agent terminology cleanup - open issues and contributor guidelines

  • Guidelines in the issue above can be also used for other terms

Jenkins Artwork

Design

Create new images and logos for Jenkins area meetups, subprojects, and plugins. You can also contribute new graphics to plugins.

Adding a logo

Jenkins Helm Chart

Kubernetes, Helm, Documentation

stable/jenkins helm chart was recently been moved to jenkinsci/helm-charts. The goal is to release a 3.0.0 version of the chart, which removes old or deprecated configuration options, simplifies the Chart and makes it easier to use. Here are some ideas:

  • Remove offensive terms

  • Use WebSockets to connect agents

  • Improve it’s documentation

  • Use Plugin Installation Manager Tool to download plugins

  • Remove helm.sh/chart labels or introduce an option to remove them to have fewer changes when using GitOps

Plugin docs on GitHub

Markdown,
Asciidoc

We are moving plugin documentation from https://wiki.jenkins.io/ to GitHub, and it is a great opportunity to create small pull requests that benefit all Jenkins users.

  • Migrate plugin documentation as documented in these guidelines). Plugins to convert can be found in the Jenkins Wiki Exporter.

  • Move or improve existing documentation based on GitHub issues

  • Review and renew the existing plugin documentation. For example, cleanup the agent terminology usage as suggested in the JENKINS-42816 EPIC

Experienced developers

If you are an established developer and want to create something new, please don’t let yourself to be blocked by the suggested topics! Feel free to contribute to any area of Jenkins. If you see any major functionality missing in Jenkins, we invite you to create new plugins. See the Plugin Tutorial and Hosting Plugins guidelines for more information.

Events

Hacktoberfest is a fully online event this year. Jenkins specific events for Hacktoberfest will be announced on the events page, in social media (twitter and LinkedIn), and through the Jenkins Online Meetup page.

Resources

Previous years