4.3 KiB
Actions demo repo
Welcome to the Actions demo repo.
This repo will help you get started quickly with actions.
This repo is part of the Actions quickstart guide
Quickstart overview
-
Sign up for Actions by talking to one of our friendly engineers
-
Create a new repo using this repo as a template, or migrate this repo
-
Enable actions by visiting your repository->🔧Settings, and clicking [X]
Enable Repository Actions
-
Trigger Actions workflows by pushing files to the repo, or by creating/opening/closing an issue
-
Visit the Actions tab to view the workflows
- Click on the workflow you would like to view
- Click on individual jobs to see their output
Actions background
This section introduces some high-level concepts and definitions of Actions. To learn more, visit the main Actions documentation
Continuous Integration (CI)
CI is part of development operations (DevOps).
CI is the practice of automating the integration of design changes from multiple contributors into a single project.
Actions
An action is the basic reusable block of CI. It's just a program or series of programs that you call from your workflow .allspice/workflows/your_workflow.yml
Actions allow you to automate repetitive and error-prone processes
to let the engineers focus on the creative design challenges.
Actions is just an easy way to say automation program.
Actions trigger automatically
Automation programs are triggered
by standard actions like uploading files to version control
, starting or finishing a design review
.
Triggers are defined in your workflow files .allspice/workflows/your_workflow.yml
Engineering teams gain rapid improvements on their process by relying on Actions to automate instead of manual operations.
To learn more, visit https://learn.allspice.io/docs/actions-triggers
Actions help your design team
- Process BOM/Assembly
- Availability checks
- Lifecycle checks (PLM)
- COGS (ERP)
- CM BOM Diff Report
- Extended quote/forecasting
- PCB cost/schedule options
- Quotes with multiple quantities
- Date extended quantity is available
- Process Schematics
- Verify symbols
- Reference designators
- Symbol attributes
- MFG/MPN/Value/etc
- Netlist
- Static analysis
- Power/GND misconnects
- Voltage level checks between components
- Process PCBAs
- Verify footprints
- Verify design rules match (DRC is no good if the rules are wrong)
- Create trace report (Current/Power/Width)
- Generate stack-up documentation
- Generate documentation (Sch/PCB Design Review/Release notes/Fab files)
- Regulate releases
- File pattern match
- Flag missing files
- Generate report
- Connect to any public API
- PLM/ERP (Cofactr/PTC)
- Distributors (Digikey/Mouser/Newark/Octopart)
- Task management (Jira)
- Create Read Update Delete (CRUD) cloud “office” documents
- MS365 (Excel/Word/Powerpoint)
- Google docs (Sheets/Docs/Slides)
- Network sync (Dropbox/MS365/iCloud)
Actions can seem a bit abstract, but it's really just code running on a computer
Workflows
Workflows are the scaffolding of your automation. They are the code that loads the automation code. Workflows are easy to read and write yaml
files that define the following:
- Load software container
- Ubuntu LTS 2024 (Debian flavored Linux distro)
- Load dependencies
- Software libraries
- Design Files
- API tools
- Secrets/tokens/keys
- Run programs
- Actions - Pre-built no-code automation programs
- Python - Programs can be written in python and access our AllSpice.io API via our py-allspice python module.
- C/C++, use the same language as firmware development
- Any programming language that can run on Debian/Ubuntu Linux
- Extend existing automation
- Workflows can be broken into modules that can be reused and extended.
Learn more
To learn more, visit our actions documentation.