Reddit DevOps
266 subscribers
30.9K links
Reddit DevOps. #devops
Thanks @reddit2telegram and @r_channels
Download Telegram
Integration Testing API Endpoints

Currently, we lack robust and thorough testing for our API. For some context, the components of our backend that we own include a GraphQL server, the Node.js API, and a Postgres database. We also use other third-party services for transactional emails, chat messaging, push notifications, authentication, etc. All the solutions I found for API testing just rely on the response to determine if the test passed or not (i.e. correct body, status code, headers, etc.). I want to go a step further though and test the entire system end-to-end within a dedicated test environment. An example of tests I want to write:


test("Verification Email", async (apiClient, emailClient, database) => {
const apiResult = await apiClient.post("/v1/auth/send_verification_email", { email: "[email protected]" });

const testerEmail = emailClient.get("[email protected]");

const verificationEmail = await testerEmail.getEmail({ from: "[email protected]", subject: "Verification Email", timeout: 120 });

const links = verificationEmail.getLinks();

assert(links.length > 0);

const verificationLink = links[0];

const verificationResult = await apiClient.get(verificationLink);

const isUserEmailVerified = await database.query("SELECT email_verified FROM users WHERE email = '[email protected]'");

assert(isUserEmailVerified);
});


Sorry the example is a bit long, but I wanted to exactly describe the flexibility I'm looking for. Is there a test suite that can do something like this? It doesn't have to be in JavaScript or any particular language for that matter. If this doesn't exist, but you think it may be helpful to you as well, would you be interested in helping me build this out?

Thank you

https://redd.it/11qf613
@r_devops
How's the job market for devops right now?

I'm a data engineer that's done a lot of cloud platform work, looking at devops roles and devops-focused data engineering roles in the future.




I was wondering how's the market for devops right now? I'm in a big city for tech, and the job market for devops and data engineers is still pretty bad. Most job postings in my area are at consulting companies.



I'm working at a unicorn tech company now, looking for startups with at least Series A funding and bigger tech companies. I guess that limits me in the job search.

https://redd.it/11r4od3
@r_devops
React Args vs Variables for Docker Images?

I am looking to validate some information and figure out how to resolve a few issues we are seeing with developers building images. I am not a programmer and from a devops perspective, still on the green side. We have some issues with a few teams who build React applications and publish the applications as containers in a registry. While scanning the registry for vulnerabilities a few secrets have been found that obviously need to be addressed.

When asking around people are telling me that React apps need to be built using arguments vs utilizing environment variables so that is why some sensitive values get placed into the docker image. I'm reviewing the builds and that is the case so that is why some secrets are there but is this really a limitation or are teams just uneducated on how to properly build secure React images?

One thing I was also exploring was where these secrets are used and if there are more modern authentication mechanisms React should be using such as Managed Identiies but still digging. Any guidance or links to relevant resources appreciated!

https://redd.it/11r5hqt
@r_devops
Can you do infrastructure as code on non-cloud assets?

It seems infrastructure as code and cloud are commonly thrown together. If I had a server farm, could I still do infrastructure as code on it using the same tools like Terraform?

https://redd.it/11r7ufu
@r_devops
Other than compensation, what do you look for when applying to other jobs?

Just curious what others have found helpful when looking at other DevOps jobs at different companies.

https://redd.it/11r86md
@r_devops
Kubernetes, microservices and OAuth2.0 client credentials flow

I have a kubernetes cluster with some microservices which I would like to access the resource server. I have an OAuth2.0 authorization server ready to be deployed and all is left is to configure and distribute client ids and secrets. Now my question is: how do you handle distributing e.g. 20 client secrets and and how do you handle rotating them in the authorization server and client microservices? Are then any standard solutions for this?

https://redd.it/11rahzu
@r_devops
Dynatrace DPS Package

Is anyone signed up on Dynatrace’s DPS Pricing model? Looking to understand the benefits to the customer

https://redd.it/11r8p01
@r_devops
AWS Pricing add-on for Google Sheets!

Hello r/devops! I wanted to let this community know the AWS Pricing add-on for Google Sheets has been re-published on the Google Workspace Marketplace! This project has been around for \~4 years and allows Google Sheets users to query AWS Pricing data using custom google sheets functions.

If you want to take a look at how this add-on works, the link is below!

https://workspace.google.com/marketplace/app/aws\_pricing\_by\_strake/378787760903

https://redd.it/11rbh7t
@r_devops
How do you protect your secret keys in your local computer?

As a DevOps engineers most of the times we have administrator access to aws, gcp, azure, etc. Leaking these keys can be devastating for our reputation.

Wondering how do you manage your SecOps in your local machines?

Best

https://redd.it/11rhsef
@r_devops
Why Companies Still Struggle with Least Privilege in the Cloud

Why do we keep using "*" and then complain about it? Is IAM so challenging?

From my experience, I have written an article on what for me are the most important considerations:

\- Every developer is an exception

\- IAM is challenging to scale

\- Visibility of access controls are poor

Do you think I'm missing something? Lazy IT Teams?

https://redd.it/11rcme9
@r_devops
Would using Kubernetes, Git actions, and Docker, in production for one of your own projects be good enough to say you have reasonable experience with the stack?

So I've built a startup of sorts all on my own where I've done all of the full-stack development. With it I built out the frontend with Next.js, and the backend with Laravel/Firebase/Redis/MySQL/NGINX. I use Jira for task management.

What I'm wondering is if I could, and should, apply to devops positions by adding Kubernetes and git actions for concretization/orchestration/CD/CI and Docker to standardize local development environments? Kubernetes will be over kill, but whatever it's a good way to strengthen my knowledge base. Also to be upfront, I use managed databases and never administrate without one.

I've been wanting to move into devops because the pay and because I'm tired of full-stack dev. It'd also be nice to be in an area helping devs out by making their lives easier with better developer experience.

I'm curios to hear your thoughts. Can apply the have a great side project principle to devops?

https://redd.it/11rkd8n
@r_devops
Ephemeral environments

Qovery has been finally been brought up at work. We currently use ECS Fargate for our platform, but this has now been popping up in ads and I swear I saw it brought up in a post here recently. Anyone use it? Does it work strictly with k8s setups or is there some functionality with something like ECS Fargate? Anyone familiar with alternatives that might work with Fargate and not require us to repackage into k8s? I don't really have a team and already get bombarded by daily adhoc tasks. So getting ephemeral environments with the lightest lift would be the goal in shooting for. Any insights?

https://redd.it/11rju1y
@r_devops
Datadog Outage Aftermath

Has anybody been able to get better pricing or renegotiate with Datadog after their outage last week?…Looking to see if they’re more flexible now

https://redd.it/11rnvz4
@r_devops
Sample of applications that can be used for CI/CD and Kubernetes practice

I'm looking for sample of applications that can be used for practicing CI/CD pipeline and Kubernetes deployment.

Any suggestion?

https://redd.it/11rqcse
@r_devops
CCNA or Network+ for DevOps/Cloud

Hey everyone, I have a question.

Currently, I work in helpdesk and I want to transition into DevOps/Cloud engineering.

I already have my CKA, Terraform associate, and AWS solutions architect associate certification with hands-on lab experience and projects.

However, I want to gain more foundational knowledge on networking. I know some people don't care about certifications, but I really enjoy having a structured learning path.

I have looked into Network+ and CCNA, and while CCNA is definitely more in-depth, I don't know if it's worth learning all the Cisco commands if I know I won't be working with it.

On the other hand, people say Network+ is more broad but not really deep enough.

For those who already work as a DevOps engineer or Cloud engineer and have CCNA or Network+ certifications, which one is more worthwhile?

https://redd.it/11rqi7a
@r_devops
LAB: Getting Artifacts on a VM - Wrong Path

Hello,

I've been trying to get Artifacts on to a VM without success and was wondering if anyone have experience attempting to get Artifacts like DSC Modules on to a VM without the use of WinRM, or a self-hosted build agent?

I've been attempting to use something like Azure CLI

​

Variables:

Invoke: 'Powershell/InvokeFiles.ps1'

      - task: AzureCLI@2
inputs:
azureSubscription: '$(azureServiceConnection)'
scriptType: 'ps'
scriptLocation: 'inlineScript'
inlineScript: 'az vm run-command invoke --resource-group $(ResourceGroupName) --name $(VM) --command-id RunPowerShellScript --scripts $($(System.DefaultWorkingDirectory)/s/$(Invoke)'

However this doesn't seem to work for me as desired, since the Powershell script isn't found at all,

Giving me the following error:

>"message": "D:\\\\a\\\\1/s/Powershell/InvokeFiles.ps1 : The term 'D:\\\\a\\\\1/s/Powershell/InvokeFiles.ps1' is not recognized as the name of \\na cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, \\nverify that the path is correct and try again.\\nAt C:\\\\Packages\\\\Plugins\\\\Microsoft.CPlat.Core.RunCommandWindows\\\\1.1.15\\\\Downloads\\\\script1.ps1:1 char:1\\n+ D:\\\\a\\\\1/s/Powershell/InvokeFiles.ps1\\n+ \~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\\n + CategoryInfo : ObjectNotFound: (D:\\\\a\\\\1/s/Powershell/InvokeFiles.ps1:String) [\], CommandNotFoundExceptio \\n n\\n + FullyQualifiedErrorId : CommandNotFoundException\\n ",

The InvokeFiles.ps1 is a simple script taking files from a storage account, and then places it on to a VM, this works without any issue being done manually or on my workstation, however deploying it thougth DevOps seems to not work as intended since i'm refering to a wrong path?

​

Hope someone is capable of helping, and thanks.

https://redd.it/11rq6h4
@r_devops
Multi-environment rollout process for AML

Hello All I am finding it hard to understand the following story that I need to work on. I don't have much experience working with MLops. Do you guys have any understanding of wat to do for this story?


* Develop a system for automating the rollout of changes to multiple environments without manual intervention.
* Naming convention
* Environment-specific directory structure
* Branching and PRs
* Pipeline parametrization and instancing
* Ensure that the system is ready for multi-environment infrastructure state, change, and configuration management.
* Test and validate the system to ensure it meets the requirements and works correctly.

https://redd.it/11rt5rj
@r_devops
Goals and Steps on How to Develop MVP

As a company, you want to build a product quickly and get it out to customers as soon as possible so that you can collect feedback and use it to enhance future iterations. The product that is not ready yet but is already functional is called MVP. The MVP stands for “Minimum Viable Product” and is the essence of what you are trying to build.

What is the reason for developing MVP before releasing a full-featured solution?

## Why and How to Develop an MVP?

There are several reasons why an MVP is required prior to releasing a fully finished version of a product.

### Basic Goals of Building an MVP

* **Checking the viability of a product.** MVP assists in determining whether the developing product concept is worth considering. There is no sense in creating a product from start to finish if it is not tested. Minimum viable product shows whether the user’s response to the software is positive or not. Should you maintain working this way, or should you implement something else?
* **Spending less on building MVP.** Since the MVP building process involves only the key elements of a product, the budget for development is substantially decreased. You test and make modifications before committing to a full-scale launch, which saves a significant amount of money compared to how much improvements cost after a final product release.
* **Ensuring quick release.** The time needed to create and release a product is limited. In MVP, a team solves one problem at a time, which speeds up the overall [**development process**](https://qarea.com/blog/product-development-process-objectives-challenges-and-solutions). As a result of not piling up complex features, you get frequent and quick releases. The product is introduced to the public sooner than if you waited until it was finished. You can evaluate how the product behaves early.
* **Improving flexibility and guaranteeing constant updates.** The primary goal is [**to build MVP**](https://qarea.com/blog/why-mvp-development-should-be-outsourced) that keeps a product relevant throughout the entire development cycle, rather than visualizing and displaying the full version at the start. It occurs even when new technology or tools hit the market. MVP is 100% responsive to constantly changing requirements and new features the audience is constantly asking for.

The main reasons you might want **to develop MVP** first are to reduce the time it takes to release as well as the risk of your competitors launching something similar to the market, and get much faster feedback on the app’s core functionality. This helps to avoid spending tons of money and time developing something for no one. Minimum viable product allows you to test your product with actual customers and see whether they enjoy it and if you are on the right track with developing a specific feature. But how to create MVP properly?

Minimum viable product is not a mediocre design delivered every few weeks. To create an MVP that is the absolute essence of the product, you must remove every feature that is not required to get to the point. It should be designed in such a way as to answer the majority of questions before a final release.

Here is **how to build minimum viable product** in a few simple steps.

## How to Build MVP: Step-by-Step Checklist

MVP is developed through the following stages.

* **Identify the problem you want to resolve**. What are the pain points you would like to solve for your audience? Who is your audience? What will make your product competitive? Consider what people need you to build in addition to what you wish to create. Think of the problem rather than the solution.
* **Conduct market analysis.** A thorough market analysis beforehand is a must. Every aspect is taken into consideration. Identify the existing gap in the industry, which can be filled with the concept your future MVP process holds.
* **Specify the understandable idea.** Prepare all of your product ideas, give them a rough shape, and designate which one you are going to work on further. Evaluate the idea to