File tree Expand file tree Collapse file tree 3 files changed +17
-4
lines changed Expand file tree Collapse file tree 3 files changed +17
-4
lines changed Original file line number Diff line number Diff line change 22# 
33#  Core principles:
44#  - Everything done here should be easy to replicate locally. Most tasks
5- #    should invoke `just <something>`.
5+ #    should invoke `just <something>`. Read the Justfile for more explanation
6+ #    of this.
67#  - Most additions to this should be extending existing tasks; e.g.
78#    there's places for unit and integration tests already.
89name : CI 
Original file line number Diff line number Diff line change 33# other tools like `bcvk` which might launch local virtual machines. 
44#  
55# See also `Makefile` and `xtask.rs`. Commands which end in `-local` 
6- # skip containerization or virtualization. 
6+ # skip containerization or virtualization (and typically just proxy `make`). 
7+ # 
8+ # Rules written here are *often* used by the Github Action flows, 
9+ # and should support being configurable where that makes sense (e.g. 
10+ # the `build` rule supports being provided a base image). 
711
812# -------------------------------------------------------------------- 
913
Original file line number Diff line number Diff line change 11#  Understanding Makefile vs Justfile:
22# 
3- #  This file MUST NOT:
3+ #  This file should primarily *only* involve
4+ #  invoking tools which *do not* have side effects outside
5+ #  of the current working directory. In particular, this file MUST NOT:
46#  - Spawn podman or virtualization tools
57#  - Invoke `sudo`
68# 
79#  Stated positively, the code invoked from here is only expected to
810#  operate as part of "a build" that results in a bootc binary
911#  plus data files. The two key operations are `make`
10- #  and `make install`.
12+ #  and `make install`. As this is Rust, the generated binaries are in
13+ #  the current directory under `target/` by default. Some rules may place
14+ #  other generated files there.
15+ # 
1116#  We expect code run from here is (or can be) inside a container with low
1217#  privileges - running as a nonzero UID even.
1318# 
1419#  Understanding Makefile vs xtask.rs: Basically use xtask.rs if what
1520#  you're doing would turn into a mess of bash code, whether inline here
1621#  or externally in e.g. ./ci/somebashmess.sh etc.
22+ # 
23+ #  In particular, the Justfile contains rules for things like integration
24+ #  tests which might spawn VMs, etc.
1725
1826prefix  ?= /usr
1927
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments