Contributed by Tiffany Kyi, Software Engineer, Yahoo | originally posted on screwdriver.cd
It’s summer! The Screwdriver team is pleased to announce our newest release which brings in new features and bug fixes across various components.
New Features
- UI
- Display admins on pipeline options page
- API
- Skip execution of virtual jobs – A job can be marked as virtual by adding the annotation screwdriver.cd/virtualJob: true. These jobs will not be executed while processing the workflow for an event, but will proceed with SUCCESS status. These jobs will skip queueing and execution and builds of its downstream jobs will be immediately created to continue the processing of the workflow.
- Get repository data from scmRepo without GitHub access – Before this change, extra calls were made to GitHub to fetch SCM repository information. After this change, the API now will pass scmRepo info directly in order to avoid extra GitHub calls. This has been implemented for webhooks only so far.
- Pipeline template enhancements: Can customize image, settings, environment, and requires for jobs that already exist in pipeline template, Add new jobs that are not part of pipeline template in user yaml, Flatten shared steps to jobs in pipeline template, Pipeline template validator shows extended configs for job template, Pipeline template validator shows workflow graph
- Store
- Replace jwt expiration with a config and environment variable – The jwt expiration is currently 13h and is written directly in the source code. This makes it difficult for SD administrators to change to arbitrary values to suit their use cases. Now Screwdriver cluster admins can set the JWT expiration length using JWT_MAX_AGE.
- Add handling for the Expect header at onPreAuth – To reduce unnecessary retries when uploading large files, Screwdriver will use the Expect: 100-continue header. The content length can be checked before the body is uploaded. Thus, the HTTP client (store-cli) can receive a 413 error earlier without unnecessary retries.
Bug Fixes
- UI
- Show workflowGraph for pipeline template validation
- Show missing fields in pipeline template detail page
- Add test for parameter-utils
- New V2 work:
- Use unified modal style for toggle job modal
- Refactor parameter flattening to generalized util
- Refactor graph rendering logic
- Add v2 secrets route
- New confirm action modal UI
- Case where there are no parameter groups to expand
- Clean up the new v2 layout
- Refactor pipeline secrets to not use ember data
- Refactor to no use ember data for pipeline data
- Screwdriver style mixin for Bootstrap buttons
- Add options to v2 route
- Modal for adding a pipeline to a collection
- New pipeline header component
- Expand default modal styles
- Update add to collection modal
- API
- Add logic to switch to using current user’s SCM token next
- Fixed error handling of external trigger
- Fix event where a restarted join build is run
- Check original job is not archived
- Handle API functional testing
Internals
- Allow colons to be used in root directory
- Allow to cd to rootDir containing special characters
Compatibility List
In order to have these improvements, you will need these minimum versions:
- API – v7.0.162
- UI – v1.0.967
- Store – v5.2.0
- Queue-Service – v3.0.10
- Launcher – v6.0.200
- Build Cluster Worker – v3.1.1
Contributors
Thanks to the following contributors for making this feature possible:
Questions and Suggestions
We’d love to hear from you. If you have any questions, please feel free to reach out here. You can also visit us on Github and Slack.