Skip to content

Various development & release tools for OctoPrint, powered by Fabric

License

Notifications You must be signed in to change notification settings

OctoPrint/devtools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f5fcfdb · Mar 19, 2025

History

86 Commits
Feb 20, 2025
Apr 25, 2024
Mar 31, 2022
Nov 6, 2024
May 18, 2021
Nov 13, 2020
Mar 19, 2025
May 18, 2021
Jul 28, 2020
Nov 10, 2020
Feb 4, 2025
Mar 9, 2023
Mar 9, 2023
Aug 15, 2022

Repository files navigation

👷‍♀️ OctoPrint devtools

Various development & release tools for OctoPrint, powered by Fabric.

Provided as-is for documentationational purposes.

Usage examples

It is recommended to create terminals for each DUT, and set TARGET (= DUT identifier) and TAG (= future release to be tested) in them correspondingly via export, e.g.

export TAG=1.4.1rc3
export TARGET=pi3

Pre-release maintenance RC on test repo (test prep)

fab sync_test_repo test_rc_maintenance:1.4.1rc3

or (with TAG set)

fab sync_test_repo test_rc_maintenance

Local test install

fab test_wheel:python3.7,1.4.1rc3

or (with TAG set)

fab test_wheel:python3.7

Flash & provision one of the test pis

Target pi3, OctoPi 0.17.0

fab flashhost_flash_and_provision:0.17.0,pi3

or (with TARGET set)

fab flashhost_flash_and_provision:0.17.0

Test update for maintenance RC

Target pi3, release channel maintenance, start version 1.4.1rc2, fake release 1.4.1rc3

fab --set target=pi3 octopi_test_update_maintenance:maintenance,1.4.1rc3,version=1.4.1rc2

or (with TARGET and TAG set)

fab octopi_test_update_maintenance:maintenance,version=1.4.1rc2

Combined

Target pi3, OctoPi 0.17.0, release channel maintenance, start version 1.4.1rc2, fake release 1.4.1rc3 (TARGET and TAG set)

fab flashhost_flash_and_provision:0.17.0 octopi_test_update_maintenance:maintenance,version=1.4.1rc2

Full example

One DUT (pi3), target 1.4.1rc4. Release on release test repo, check local sdist/wheel installation, then run a release test matrix against OctoPi 0.15.0, 0.15.1, 0.16.0, 0.17.0 and various release channel and start version combinations.

export TARGET=pi3
export TAG=1.4.1rc4
fab sync_test_repo
fab test_rc_maintenance
fab test_sdist:python27
fab test_wheel:python37
fab flashhost_flash_and_provision:0.15.0 octopi_test_update_maintenance:stable,version=1.4.0
fab flashhost_flash_and_provision:0.15.1 octopi_test_simplepip
fab flashhost_flash_and_provision:0.15.1 octopi_test_update_maintenance:maintenance,version=1.4.1rc3
fab flashhost_flash_and_provision:0.16.0 octopi_test_update_maintenance:maintenance
fab flashhost_flash_and_provision:0.17.0 octopi_test_update_maintenance:maintenance
fab flashhost_flash_and_provision:0.17.0 octopi_test_update_maintenance:maintenance,version=1.4.1rc3
fab flashhost_flash_and_provision:0.17.0 octopi_test_update_maintenance:devel

Testrig

Testrig files available in ./testrig.

License

MIT