diff --git a/docs/screencasts/docker/Dockerfile b/docs/screencasts/docker/Dockerfile index b5d88c5ce..08cecdb55 100644 --- a/docs/screencasts/docker/Dockerfile +++ b/docs/screencasts/docker/Dockerfile @@ -14,12 +14,14 @@ ENV PATH="${PATH}:/usr/local/go/bin:/root/go/bin" RUN go install github.com/sigstore/cosign/cmd/cosign@latest RUN go install github.com/sigstore/rekor/cmd/rekor-cli@latest -# Set prompt -ENV PS1='$ ' +ENV SHELL=/bin/bash +ENV TERM=xterm-256color +ENV COLUMNS=200 +RUN echo 'export PS1="\[\033[38;2;144;255;153m\]~/constellation\[\033[0m\]\r\n\[\033[38;2;139;4;221m\]$\[\033[0m\] "' >> /root/.bashrc # Copy install scripts COPY ./*.sh /root/ WORKDIR /root ENTRYPOINT ["/usr/bin/expect", "-f"] -CMD ["verify-cli.sh", "/recordings/verify-cli.cast"] +CMD ["verify-cli.sh"] diff --git a/docs/screencasts/docker/check-sbom.sh b/docs/screencasts/docker/check-sbom.sh index 95f18e188..eca8d7701 100755 --- a/docs/screencasts/docker/check-sbom.sh +++ b/docs/screencasts/docker/check-sbom.sh @@ -8,7 +8,7 @@ set record_name [lindex $argv 0]; proc expect_prompt {} { # make sure this matches your prompt - expect "$ " + expect "0m " } proc run_command {cmd} { @@ -24,7 +24,7 @@ proc send_keystroke_to_interactive_process {key {addl_sleep 2}} { } # Start recording -spawn asciinema rec --overwrite $record_name +spawn asciinema rec --overwrite /recordings/check-sbom.cast send "\r" expect_prompt diff --git a/docs/screencasts/docker/verify-cli.sh b/docs/screencasts/docker/verify-cli.sh index a78b8cf74..09b3959bc 100755 --- a/docs/screencasts/docker/verify-cli.sh +++ b/docs/screencasts/docker/verify-cli.sh @@ -2,46 +2,39 @@ # Note: Expects to be able to run 'sudo install' without a password set timeout -1 -set send_human {0.05 0 1 0.05 0.3} +set send_human {0.005 0.015 1 0.05 0.3} set CTRLC \003 set record_name [lindex $argv 0]; proc expect_prompt {} { # make sure this matches your prompt - expect "$ " + expect "0m " } proc run_command {cmd} { - send -h "$cmd" - send "\r" - expect -timeout 1 -} - -proc send_keystroke_to_interactive_process {key {addl_sleep 2}} { - send "$key" - expect -timeout 1 - sleep $addl_sleep + send -h "$cmd\r" + expect -timeout 3 } # Start recording -spawn asciinema rec $record_name +spawn asciinema rec --overwrite /recordings/verify-cli.cast send "\r" expect_prompt ### Step 0: Requirements -run_command "echo Step 0: Installing requirements" -expect_prompt -run_command "go install github.com/sigstore/cosign/cmd/cosign@latest" -expect_prompt -run_command "go install github.com/sigstore/rekor/cmd/rekor-cli@latest" -expect_prompt +# run_command "echo Step 0: Installing requirements" +# expect_prompt +# run_command "go install github.com/sigstore/cosign/cmd/cosign@latest" +# expect_prompt +# run_command "go install github.com/sigstore/rekor/cmd/rekor-cli@latest" +# expect_prompt ### Step 1: Download CLI run_command "echo Step 1: Download CLI and signature" expect_prompt -run_command "curl -sLO https://github.com/edgelesssys/constellation/releases/latest/download/constellation-linux-amd64" +run_command "curl -LO https://github.com/edgelesssys/constellation/releases/latest/download/constellation-linux-amd64" expect_prompt -run_command "curl -sLO https://github.com/edgelesssys/constellation/releases/latest/download/constellation-linux-amd64.sig" +run_command "curl -LO https://github.com/edgelesssys/constellation/releases/latest/download/constellation-linux-amd64.sig" expect_prompt ### Step 2: Verify the CLI using cosign diff --git a/docs/screencasts/generate-screencasts.sh b/docs/screencasts/generate-screencasts.sh index c91ca1840..9da2710de 100755 --- a/docs/screencasts/generate-screencasts.sh +++ b/docs/screencasts/generate-screencasts.sh @@ -7,5 +7,10 @@ docker run -it -v "$(pwd)"/recordings:/recordings screenrecodings cp recordings/verify-cli.cast ../static/assets/verify-cli.cast # Generate cast to check SBOM -docker run -it -v "$(pwd)"/recordings:/recordings screenrecodings check-sbom.sh /recordings/check-sbom.cast -cp recordings/check-sbom.cast ../static/assets/check-sbom.cast +# docker run -it -v "$(pwd)"/recordings:/recordings screenrecodings check-sbom.sh /recordings/check-sbom.cast +# cp recordings/check-sbom.cast ../static/assets/check-sbom.cast + +# docker rm -f recorder || true +# docker build -t screenrecodings docker +# docker run --name recorder -d -v "$(pwd)"/recordings:/recordings screenrecodings +# docker exec recorder /bin/bash < . check-sbom.sh /recordings/check-sbom.cast