Chapter 1 Network Programmability Flashcards
Network Programmability Foundation
What does Software Version Control (SVC) imply?
The use of a master database/controller to store current and past versions of the source code to allow multiple people to work on the code.
Who developed Git and why?
Git was developed by Linux Torvalds as the alternative SVC (BitKeeper) wasn’t allowed anymore on Linux systems.
What are the three main structures tracked by Git?
- Local workspace -> where you store files
- Staging area -> intermediate storage area for items to be synced
- Head/Local repository -> where all committed items are stored
What are the statuses a file can have in Git?
- Untracked -> just created, never committed or ignored files
- Unmodified -> files not changed
- Modified -> file changed with git add
- Staged -> committed files
What does the command ‘git clone’ do?
Copies the files to your local workspace to work on them.
How do you initiate a repository locally with Git?
git clone <url to repository> <directory to clone into>
git init <repository name>
What command is used to add all files in the directory to the staging area?
git add .
What does ‘git commit -a -m <message>' do?</message>
Commits changes with a message and automatically stages any modified files.
What is a detached head in Git?
The state where you checked out a specific past commit.
What are the two situations possible when merging branches in Git?
- Fast-Forward merge -> branch pushed as no updates on the master
- 3-Way merge -> combine changes of master and branch into master
What command shows the log of all commits in a Git repository?
git log
What is the primary purpose of RPC (Remote Procedure Calls)?
To identify a remote procedure to execute on the remote system.
What are the HTTP methods primarily used in RPC APIs?
- HTTP GET
- HTTP POST
What does REST stand for?
Representational State Transfer.
What HTTP methods are commonly used in REST APIs?
- GET
- POST
- PUT
- PATCH
- DELETE
What are the two types of API calls in REST?
- Synchronous
- Asynchronous
What is a challenge of synchronous APIs?
Blocking Operations that require the client to wait for a response.
What is a challenge of asynchronous APIs?
Complexity in Implementation.
What are the two categories of Python data types?
- Mutable
- Immutable
What does the term ‘mutable’ mean in the context of Python data types?
Data types that can be changed after initialization.
What does the command ‘git push <-remotename> <-branchname>’ do?
Pushes changes to the remote repository.
True or False: REST APIs are only limited to JSON as a data transfer format.
False
What is the purpose of the ‘git merge <destination>' command?</destination>
Merges two branches.
What does ‘git diff’ do?
Shows the difference between the working directory and index (staging area).
Benefits of Python virtual environments
Isolation
Portability
Easy management
Security
Cross-platform compatibility
Disadvantages of Python virtual environments
Additional overhead
Storage
Time Consuming
Terraform 3 phases
Write -> write configuration of resources to be created and it’s attributes
Plan -> Analyze the written configuration and the active one to define a plan to create, update or destroy resources
Apply -> Apply the planned changes