Seeking 2021 Google Summer of Code Interns hero graphic

Seeking 2021 Google Summer of Code Interns

Feb 16, 2021 by Armory

Engineer With Armory, Sponsored by Google

Armory is proud to invest in Google Summer of Code again this year, and help foster a new generation of global engineering talent by mentoring students in CD Foundation projects. Passing along our understanding of enterprise-scale software delivery to new DevOps practitioners keeps us in touch with the Armory user’s journey : ) Want to participate in 2021, or know someone who might? Keep reading!

Innovation Through Mentoring

Last year’s crop of promising projects brought us Victor Odusanya’s implementation of a DroneCI pipeline stage in Spinnaker. With his project, Victor was able to expand open source support for continuous integration tools beyond Jenkins and Google Cloud Build. Now companies using DroneCI within pipelines can seamlessly extend Spinnaker to manage it, with Victor’s work to build from. This project also gave the Spinnaker community an early opportunity to handle a new extensibility request according to the lean-core commitment made by the TOC (Technical Oversight Committee);  DroneCI integration happens via a plugin.

We’re currently still looking for bright new participants to join us in this year’s cohort! Please reach out to us in the Contributor Experience SIG channel on Spinnaker Slack ASAP to express interest or propose a project idea.

Paying It Forward: Spinnaker Plugins Workshop

The best part of investing in the future through GSoC has been seeing Victor pass his knowledge along to others and become part of the continuous delivery ecosystem. After completing GSoC, volunteering at Spinnaker Gardening Days, and participating in several plugin projects with Armory engineers, Victor was ready to teach an in-depth workshop at Spinnaker Summit in October:
Through community events, Victor networked with DevOps experts and gained experience integrating MS Teams, GitHub, Drone and other services with Spinnaker using the plugin framework. At the Summit, he focused on the case study of integrating Spinnaker with the GitHub Dispatch Endpoint, with the goal of triggering a GitHub Actions workflow. With the goal of lowering the barrier to entry for Spinnaker plugins, his workshop walks viewers through a plugin development experience with a sample GitHub Dispatches project. In the video above, watch him build models and methods into a working plugin, taking steps such as:
  1. Consulting resources useful to Spinnaker plugin builders, such as the Plugin Creators Guide.
  2. Starting the plugin project with prerequisites and Armory’s PF4J RandomWait Stage, a starter which contains bootstrap required for quick project setup.
  3. Understanding how extensions to different Spinnaker services can be packaged together as submodules into a Gradle plugin bundle.
  4. Managing Spinnaker service dependencies through Kork, and other dependency management tasks.
  5. Extending Spinnaker’s Orca orchestration engine, which “connects the dots across the pipeline,” via the Orca API’s extension points.
  6. Extending the PF4J plugin to configure logging for development.
  7. Building a plugin class and entry point, to start the plugin and define setup actions.
  8. Providing a stage definition to connect the new stage to other stages within pipelines; understanding Spinnaker stage definitions and associated methods.
  9. Retrieving data, such as auth token and event type, from Spinnaker’s configuration manifest for use in a plugin.

Join Victor as he synthesizes everything he learned as a newcomer to Spinnaker Plugin development in 2020 into the workshop. If you are interested in working on your own GSoC project this year, you may decide to build an extension for Spinnaker using the same plugin framework. However, the sky is the limit, so bring your ideas, or get unblocked by reviewing our ideas on the GSoc page on Spinnaker.io. For architectural advice, help scoping your project, logistical answers, or moral support, reach out to Armory community organizers in the Spinnaker contributor experience channel to get connected with the mentor team.

As Victor explains in the workshop, developers can extend virtually any Spinnaker service. As a first step, determe if the interfaces you are looking to add functionality to have existing extension points. The friendly folks in the Platforms SIG can advise, or you can file an issue for recommendations on how a particular extension should be implemented. The wonder of GSoC, though, is that in addition to the usual channels for engaging with the Spinnaker community to innovate, you can also receive a stipend for Google for the summer, along with expert guidance from Armory engineers.
gsoc logo

About Google Summer of Code

As a part of Google Summer of Code, student participants are paired with a mentor from the participating organizations, gaining exposure to real-world software development and techniques. Students have the opportunity to spend the break between their school semesters earning a stipend while working in areas related to their interests. In turn, we are able to identify and bring in new developers who implement new features and hopefully continue to contribute to open source even after the program is over. Most importantly, more code is created and released for the use and benefit of all.

Last year, Victor demonstrated to Armory that this project would indeed bring new faces and valuable perspectives to the project contributor table. Our friends in the Jenkins project have facilitated similar crossover from students to OSS visionaries in the past. Taking on a project is a fast track to becoming established in the CD Foundation’s practitioner community, and can help your tech career achieve lift off!

Next Steps For Applicants

Armory mentors have already been identified to work with YOU, or your favorite computing student, this summer! Visit the CD Foundations GSoC page for resources or next steps. Please reach out to us in the Contributor Experience SIG channel on Spinnaker Slack ASAP to express interest or propose a project idea, so we can help get you on your way.

Share this post:

Recently Published Posts

Lambda Deployment is now supported by Armory CD-as-a-Service

Nov 28, 2023

Armory simplifies serverless deployment: Armory Continuous Deployment-as-a-Service extends its robust deployment capabilities to AWS Lambda.

Read more

New Feature: Trigger Nodes and Source Context

Sep 29, 2023

The Power of Graphs for Ingesting and Acting on Complex Orchestration Logic We’ve been having deep conversations with customers and peer thought leaders about the challenges presented by executing multi-environment continuous deployment, and have developed an appreciation for the power of using visual tools such as directed acyclic graphs (DAG) to understand and share the […]

Read more

Continuous Deployments meet Continuous Communication

Sep 7, 2023

Automation and the SDLC Automating the software development life cycle has been one of the highest priorities for teams since development became a profession. We know that automation can cut down on burnout and increase efficiency, giving back time to ourselves and our teams to dig in and bust out innovative ideas. If it’s not […]

Read more