#buildinfrarunc.cue at abominiation · cp...

1 messages · Page 1 of 1 (latest)

frozen heron
#

Matrix builds?

slate flame
#

Not sure I understand the question.

frozen heron
#

similar to that ☝️

slate flame
slate flame
frozen heron
#

I run dagger do and it just hangs...let me try some debug logs

#

my cue eval also just hangs

#

hmmm

#

nevermind...had extra file in there 😄

slate flame
#

It takes a minute to process.

frozen heron
#

cue eval is slow, though

slate flame
#

152s to build a fully cached build (just a few steps).

frozen heron
#

I'm building a few times to check it out

#

second one

#

third one

#

trying with --no-cache

#

not a lot of benefit from the caching...hmmm

#

@slate flame I commented out the focal bits and got this result

#
Targets: {
    "bionic": Linux
    //        "focal":  Linux
}

#Target: {
    id: string
    {
        id:     "bionic"
        kind:   Targets.bionic
        _img:   #Bionic
        output: _img.output
    }//|

    //{
    // id:     "focal"
    // kind:   Targets.focal
    // _img:   #Focal
    // output: _img.output
    //}
}
slate flame
#

Yeah I'm going to have to find some other way to be clever.

frozen heron
#

It's super elegant. Guessing it's a combo of a slow performance area for CUE atm (for loops plus disjunctions) plus the way Dagger evals CUE many times during execution. Basically slow CUE gets magnified.

slate flame
frozen heron
#

Yeah, you could be a bit more static and have

actions: {
  build: {
    bionic: ...
    focal: ...
  }
}
#

and then call dagger do build bionic

slate flame
#

Using a template instead of for loops really helps.

frozen heron
#

Did you change up your Targets a bit?

#

to a list or something?

slate flame
#
Targets: {
    "bionic": #Bionic
    "focal":  #Focal
    "jammy":  #Jammy
}
frozen heron
#

nice

slate flame
#

Yeah, this is working perfectly.

frozen heron
#

would love to get this pattern documented

slate flame
#

It's on the main branch

frozen heron
#

Wow!

#

both built (with caching) in under 6 secs!

slate flame
#

I'd been struggling with how to deal with filesystem writes templating that really helped.

fast breach
#

pretty cool, thanks for sharing 🙂

slate flame
#

Even with this, every target added adds a lot of overhead.