E Vehicle Android General - 7 Flashcards
What does JWT stand for?
JSON Web Token
In terms of our JUnit tests and Instrumented tests, what do the CI Jobs run?
Only the Junit tests, our CI jobs do not and cannot run the instrumented tests.
Using a public key and a private key is known as what type of encryption?
Generally explain how this works.
There is a public key that can be shared with anyone and a private key which is not shared.
The public key can be used to encrypt and the private key is used to decrypt.
Explain how a JWT works and what the benefit of it is.
It works like a reverse asymmetric encryption. Appsec has a private key that they create a token with. Then, all apps can check the token against the public key which anyone can access to see if it is a valid token.
The benefit to this is that if appsec is down, previously generated tokens can still be checked with the public key to see if it is valid.
Using a public key and a private key for security is known as what?
Asymmetric encryption
When the sender and receiver both have have the same key to encrypt and decrypt, it is called what?
Symmetric Encryption
What is the simple definition of symmetric encryption?
It is when both the sender and receiver have the same key to encrypt and decrypt.
Our release branches will automatically deploy to which environment?
How does this happen?
UAT
This happens automatically via jenkins pipelines.
What “tier” is the work that is being done off of develop?
Tier 1
Explain why a current months feature branch may be behind develop?
It could be behind develop because there may be long running feature work aka tier 1 work being pushed to develop and the current months feature branch wouldn’t have those changes yet.
Explain how the hot fix process works.
- Branch off of master and call the branch release/X.X.1-lastReleasedMonth_WX.1
Note: The 1 should be an increase in the patch version.
- Branch off of that branch and call it bugfix/MPS-XXXXX-hotFix
- Once it is approved, merge your hotfix branch into the release/X.X.1-lastReleasedMonth_WX.1, which will automerge to any open month feature branches as well as develop.
- Merge the release/X.X.1-lastReleasedMonth_WX.1 branch into master.
Draw and Study this picture of the new branching strategy.
Draw and Study this picture.
Where are the regular monthly feature branches branched off of?
The previous months release branch.
What gets automatically merged into master?
Nothing
Explain all of the automatic merging situations that bitbucket does.
What is this all based on?
When you merge in to a monthly feature branch, it will be automatically merged into the next months feature branch, if it exists, and then to develop.
When you make a branch to do a hotfix off of, you will name it by increasing the patch version. When you merge your hotfix back into this branch, it will auto-merge to any open monthly release branches and then to develop.
It is all based on the versioning that is put into the branch names. Changes made to release branches with lower numbers in their name will auto-merge into any release branches that have higher version numbers in their name, as well as ultimately into develop.