Actions CI/CD
    • PDF

    Actions CI/CD

    • PDF

    Article Summary

    Actions automate your design process

    Welcome to AllSpice Actions.

    This section introduces some high-level concepts and definitions of Actions.

    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.

    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 high-level overview

    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.

    Next steps

    We recommend either the Actions Quickstart to get going, or How to run a job.

    • Actions Quickstart

    • How to Run a Job

    • Actions Library

    • Artifacts: generating and storing files


    Was this article helpful?