travis.yml: upgrade to Ubuntu 20.04 and enable cli tests#256
travis.yml: upgrade to Ubuntu 20.04 and enable cli tests#256ebiggers merged 3 commits intogoogle:masterfrom ebiggers:run-cli-tests
Conversation
|
did you considered migrating to github actions instead? |
|
@ebiggers can you update the expected CLI output to match what we're actually get. It looks like there is a disparity w.r.t the password being echoed. We should proably also just ditch the 32-bit build. I doubt there's much value there, and we will probably have to continuously fight with the CI to prevent things from breaking.
Yes, this is the long-term plan, once we get things working w/ 20.04 in our current setup. |
The problem is that the password is echoed when Travis CI runs the tests, but it isn't echoed when running the tests locally. It presumably has something to do with whether stdin is a terminal or not. Before we can merge this I need to find a way to make the output consistent.
People still expect to build 32-bit binaries for ARM (#221), or for i386 (#233) which is still a supported Debian release architecture. |
Apparently, on some distros 'su' doesn't preserve $PATH. So, manually export it in the command. Also, ensure that the shell stays as bash. This is needed for some of the CLI tests to pass in Travis CI.
Set the terminal to raw mode *before* printing the prompt. Otherwise the user (or the automated test) might enter the passphrase before the terminal gets put into raw mode. This is needed for some of the CLI tests to pass reliably in Travis CI.
Now that Travis CI supports a version of Ubuntu that has a kernel that supports v2 encryption policies, upgrade to it and enable the cli tests.
Finally figured this out, I think. getPassphraseKey() needs to put the terminal into raw mode before printing the prompt; otherwise there's a race condition. |
Now that Travis CI supports a version of Ubuntu that has a kernel that
supports v2 encryption policies, upgrade to it and enable the cli tests.