AllSpice Actions tutorial demo repo To learn more, visit https://learn.allspice.io/docs/actions-cicd
Go to file
Daniel Lindmark 2cb65481c9
Workflow-syntax-minimal / Job-Hello-World (push) Successful in 2s Details
Workflow-syntax-commented / Job-Hello-World (push) Successful in 2s Details
Generate BOM / Generate_BOM (push) Successful in 13s Details
Python-py-allspice / py-allspice test (push) Successful in 20s Details
Secrets-Variables-Keys-Demo / py-allspice test (push) Successful in 9s Details
Merge branch 'dd/add-workflows-02-03'
2024-05-22 18:00:41 -05:00
.allspice Merge branch 'dd/add-workflows-02-03' 2024-05-22 18:00:41 -05:00
images Upload state of the art 2024-05-06 15:13:14 -05:00
.gitattributes Add V1 files 2024-01-01 20:41:08 -06:00
.gitignore Add V1 files 2024-01-01 20:41:08 -06:00
.gitmodules Add V1 files 2024-01-01 20:41:08 -06:00
Archim.OutJob Add V1 files 2024-01-01 20:41:08 -06:00
Archimajor.PcbDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Archimajor.PrjPcb Add V1 files 2024-01-01 20:41:08 -06:00
Archimajor.SchDoc Add V1 files 2024-01-01 20:41:08 -06:00
Archimajor.csv Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Connectors.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
EndStops.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Fans.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Microcontroller.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Mosfets.SchDoc Add Mosfets.SchDoc back to repo 2024-05-14 14:19:20 -05:00
Motors.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Power.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Thermistors.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
Thermocouples.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
USB.SchDoc Fix endstop non-detects, Fix SERCOM 2024-01-01 22:34:29 -06:00
cern_ohl_v_1_2.md Add V1 files 2024-01-01 20:41:08 -06:00
readme.md Add documentation 2024-05-10 19:14:32 +00:00

readme.md

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.