Skip to content

Conversation

@ebiggers
Copy link
Collaborator

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.

@Maryse47
Copy link

did you considered migrating to github actions instead?

@josephlr
Copy link
Member

@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.

did you considered migrating to github actions instead?

Yes, this is the long-term plan, once we get things working w/ 20.04 in our current setup.

@ebiggers
Copy link
Collaborator Author

@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.

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.

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.

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.
@ebiggers
Copy link
Collaborator Author

ebiggers commented Nov 8, 2020

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.

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.

@ebiggers ebiggers merged commit f32b6a6 into google:master Nov 8, 2020
@ebiggers ebiggers deleted the run-cli-tests branch November 8, 2020 04:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants