Skip to content

Commit

Permalink
chore: rm old screenshots func
Browse files Browse the repository at this point in the history
  • Loading branch information
markphelps committed Jul 25, 2023
1 parent 2dd79fe commit 46b845f
Showing 1 changed file with 0 additions and 95 deletions.
95 changes: 0 additions & 95 deletions build/testing/ui.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,10 @@ package testing

import (
"context"
"crypto/sha256"
"fmt"
"os"
"path"
"time"

"dagger.io/dagger"
"golang.org/x/sync/errgroup"
)

func UI(ctx context.Context, client *dagger.Client, ui, flipt *dagger.Container) error {
Expand All @@ -32,97 +28,6 @@ func UI(ctx context.Context, client *dagger.Client, ui, flipt *dagger.Container)
return nil
}

func Screenshots(ctx context.Context, client *dagger.Client, flipt *dagger.Container) error {
src := client.Host().Directory("./ui/", dagger.HostDirectoryOpts{
Include: []string{
"./package.json",
"./package-lock.json",
"./playwright.config.ts",
"/screenshots/",
},
})

contents, err := src.File("package-lock.json").Contents(ctx)
if err != nil {
return err
}

cache := client.CacheVolume(fmt.Sprintf("node-modules-screenshot-%x", sha256.Sum256([]byte(contents))))

ui, err := client.Container().From("node:18-bullseye").
WithMountedDirectory("/src", src).WithWorkdir("/src").
WithMountedCache("/src/node_modules", cache).
WithExec([]string{"npm", "install"}).
WithExec([]string{"npx", "playwright", "install", "chromium", "--with-deps"}).
Sync(ctx)
if err != nil {
return err
}

src = client.Host().Directory("./ui/", dagger.HostDirectoryOpts{
Exclude: []string{
"./dist/",
"./node_modules/",
},
})

// remount entire directory with module cache
ui, err = ui.WithMountedDirectory("/src", src).
WithMountedCache("/src/node_modules", cache).
WithExec([]string{"npm", "install"}).
Sync(ctx)
if err != nil {
return err
}

entries, err := ui.Directory("screenshot").Entries(ctx)
if err != nil {
return err
}

var (
g errgroup.Group
containers = make(chan *dagger.Container)
)

go func() {
_ = g.Wait()
close(containers)
}()

for _, entry := range entries {
entry := entry
g.Go(func() error {
test, err := buildUI(ctx, ui, flipt)
if err != nil {
return err
}

if ext := path.Ext(entry); ext != ".js" {
return nil
}

c, err := test.WithExec([]string{"node", path.Join("screenshot", entry)}).Sync(ctx)
if err != nil {
return err
}

containers <- c

return err
})
}

for c := range containers {
if _, err := c.Directory("screenshots").
Export(ctx, "screenshots"); err != nil {
return err
}
}

return g.Wait()
}

func buildUI(ctx context.Context, ui, flipt *dagger.Container) (_ *dagger.Container, err error) {
flipt, err = flipt.Sync(ctx)
if err != nil {
Expand Down

0 comments on commit 46b845f

Please sign in to comment.