Open Hour 2020-AUG-06

January 23, 2021 - slangadmin


  • Salt news and updates
  • Sodium Point release: status update and what’s included
  • PR Jam recap
  • Contributor Guide: planned updates and discussion of what to include
  • Open discussion and questions

Salt News and Updates

Community Manager Cassandra Faris

  • The next several Open Hours will have a featured topic based on community conversations and frequently asked questions
    • August 6: Salt Contributor Guide and documentation
    • August 13: Release process and strategy
    • August 20: Future Working Group plans
  • We’re looking for meetup speakers. The topics can be on how you’re using Salt as well as general SecOps and DevOps topics. Contact Cassandra if you have an idea for a talk or want to be part of a panel discussion.
  • The newest addition to our Twitch is Tuesday Triage. Log in to follow along and learn at 12:00pm MT/6:00pm UTC.

Sodium Point Release: Status Update and What’s Included

SaltStack Project Manager Sage Robins

  • The point release is scheduled to be out on August 6 by 3:00pm MT/9:00pm UTC.
  • The release was delayed because the development team found a problem where the Salt API wasn’t starting. This release was delayed to a bug found late in the RC process that caused Salt-api to fail to start. While fixing the bug, the team found a problem with the manual process and made a mistake in not getting all PRs labeled for the Point Release, causing the additional delay.
  • We’ve been working toward more tests to packages prior to releases. This is an area of focus for the Magnesium release.
  • Release highlights
    • Bugfix release
    • It fixes many Python 3 and Salt call issues

PR Jam Recap

Community Manager Cassandra Faris

  • Our first PR Jam was a success! We cleaned out the backlog and determined that some things in it were redundant or no longer needed. This allowed us to focus on the things that are needed. Moving forward, a smaller backlog will make it easier to manage PRs and take care of them more quickly. We set out with a goal to port 50 of the ~248 PRs in the backlog. When the event wrapped up, we’d ported 123 PRs.
  • PR Jam Stats
    • Average Number of Participants: 15
    • Average Number of New Contributors: 1
    • Total Number of Hours on Zoom: 27
    • Total Number of Hours on Twitch: 20
    • Total Number of PRs Ported Today: 123
  • We wrapped up with an excellent retrospective and some talks and discussion about the future of Salt. We plan to do a Documentation Jam in early September and hold additional PR Jams in the future. Thank you to all who participated!

Contributor Guide: Planned Updates and Discussion of What to Include

SaltStack Project Manager Sage Robins and Technical Writers Alyssa Rock and Derek Ardolf

  • Docs Jam
    • The Docs Jam will focus on getting use case examples detailed on modules that people are using every day. We want to create documentation around that.
    • The other thing we need is documentation to tell people how to contribute to the doc strings within modules. That’s ultimately what gets rendered into documentation on the docs site.
  • Documentation areas of improvement
    • Pillar usage (whether and how to use pillars) is something that needs documented more specifically. There is an open issue regarding docs clarification and feedback is welcomed. The issue is here:
    • Walkthrough and beginners’ guides.
  • Anyone who is interested is welcome to attend the Documentation Working Group every two weeks at 12pm MT/6pm UTC. Full details are on the Salt Community Events Calendar.

Open Discussion and Questions

Community and Core Team

  • Contributor Question: When will the new Community Wiki come out?
    • The wiki and community site are the 2 main sources of community information. The community site is more for blogs and events.
    • The wiki is going to be the place to go for Open Hour notes and release information. A goal for Magnesium is to organize the wiki better before it grows. Research on how to organize GitHub wikis is needed.
    • Contributor Comment: “Keeping the core documentation in the codebase makes a lot of sense. A wiki would allow you to push the use case documentation out to end users more easily, more articles than manuals”
  • Contributor Question: The man pages are updated as part of the release process and shouldn’t be updated on PRs. Why do we have store them in the SaltStack repo vs. building them when man (manual) pages are needed?
    • History: Five years ago, when building docs, we had issues with Sphinx’s different versions and decided to create one source of documentation. The docs repo was to be this source. This avoided the problems that came with building docs in all different versions of Sphinx.
    • Man pages are built every release. There is always a PR for those updated pages. There may not be a good reason for storing them into the repo. Sage is going to look into whether we need to continue this.
  • Contributor Question: How can someone contribute use cases?
    • We haven’t decided anything yet, but will have a better idea after the August 13 Documentation Working Group meeting.
    • We would like to include those use cases for the Docs Jam.
  • Contributor Question: How do we do integration testing?
    • Overview: We currently have a limited subset of tests that run on PRs. These are the fastest and make up 80-90% of our test cases. We have periodic branch builds that run against the master branch. There are future plans to improve the test suite and end-to-end process.
    • We use three main test types. Here are some basic definitions that give us a shared frame of reference.
      • Unit: Testing one function in isolation (no network or disc calls) and tells what’s going on internal to Salt. The goal is to get a reasonable level of confidence that we’re not breaking code on PRs. These tests aren’t going to check underlying systems.
      • Functional: Narrow, focused tests that make a networking or disc call. Still relatively fast because they’re doing something simple and don’t require a master or minion.
      • Integration: Test end-to-end, spinning up a master and minion to test in a full Salt environment. They are slower than the other two types of tests and don’t run on every PR due to setup time. They provide a high-level perspective of real world scenarios.
    • Bring testing questions to the Testing Clinic Twitch streams on Tuesdays at 1:00pm MT/7:00pm UTC and Thursday at 11:00am MT/5:00pm UTC with SaltStack Engineer Wayne Werner. This provides a hands-on, supported opportunity to write tests.