#general (2022-01)

General conversations related to DevOps/Automation

General Discussions

2022-01-01

SweetOps avatar
SweetOps
08:00:02 PM

Hey everyone, give a warm welcome to our newest members!

  • @rb

Good to have you here =)

wave1

2022-01-02

2022-01-03

SweetOps avatar
SweetOps
08:00:10 PM

Hey everyone, give a warm welcome to our newest members!

  • @shatakshi.gupta85

Good to have you here =)

wave1

2022-01-04

SweetOps avatar
SweetOps
08:00:04 PM

Hey everyone, give a warm welcome to our newest members!

  • @Dominic
  • @Kiran Kumar Gadupu
  • @rino.abraham2011
  • @Tim Isted
  • @SYED HUSSAIN
  • @Rogério R. Alcântara
  • @Atali Daoud

Good to have you here =)

wave3
Dominic avatar
Dominic

Hi from a new helmfile user.

Tim Isted avatar
Tim Isted

Hi all

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

welcome!

2022-01-05

SweetOps avatar
SweetOps
08:00:07 PM

Hey everyone, give a warm welcome to our newest members!

  • @Ángel Albiach Ruiz
  • @Natalia Roose
  • @Piyush Sonigra
  • @Moritz
  • @Naija Ninja
  • @Wédney Yuri

Good to have you here =)

2
wave7

2022-01-06

SweetOps avatar
SweetOps
08:00:12 PM

Hey everyone, give a warm welcome to our newest members!

  • @jmct
  • @Matous Kundrik
  • @Brian Choate

Good to have you here =)

1
wave2

2022-01-07

Antarr Byrd avatar
Antarr Byrd

Is it possible to restore a MSSQL database from the command line using an sql backup similar to pg_restore?

RB (Ronak) (Cloud Posse) avatar
RB (Ronak) (Cloud Posse)

are you using mssql on rds? if so check the section “Restoring a database” on https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.Procedural.Importing.html

exec msdb.dbo.rds_restore_database 
	@restore_db_name='database_name', 
	@s3_arn_to_restore_from='arn:aws:s3:::bucket_name/file_name.extension',
	@with_norecovery=0|1,
	[@kms_master_key_arn='arn:aws:kms:region:account-id:key/key-id'],
	[@type='DIFFERENTIAL|FULL'];
Antarr Byrd avatar
Antarr Byrd

I’m not sure where it is hosted. But I need to do it on a mac

RB (Ronak) (Cloud Posse) avatar
RB (Ronak) (Cloud Posse)

here’s the official way from microsoft

https://docs.microsoft.com/en-us/sql/t-sql/statements/restore-statements-transact-sql?view=sql-server-ver15

 Restores SQL database backups taken using the BACKUP command.

note that i haven’t tried either of these techniques for ms sql

1
Jim G avatar

dbatools.io has powershell modules to restore backups. I have not tested them on a mac, however.

1
SweetOps avatar
SweetOps
08:00:09 PM

Hey everyone, give a warm welcome to our newest members!

  • @Viswanathan Vijayabaskar
  • @Michael Attard
  • @Doan Bao

Good to have you here =)

wave2

2022-01-08

SweetOps avatar
SweetOps
08:00:10 PM

Hey everyone, give a warm welcome to our newest members!

  • @Florin Andrei
  • @sanket.s.nadkarni

Good to have you here =)

wave1
1

2022-01-09

SweetOps avatar
SweetOps
08:00:05 PM

Hey everyone, give a warm welcome to our newest members!

  • @Luis Escobar

Good to have you here =)

wave1

2022-01-10

SweetOps avatar
SweetOps
08:00:03 PM

Hey everyone, give a warm welcome to our newest members!

  • @Nedim Yılmaz
  • @prashant srivastava
  • @minamijoyo
  • @Jens Lauterbach
  • @JGohel
  • @Lucky
  • @Cody Fletcher
  • @paul.scarrone

Good to have you here =)

wave1

2022-01-11

sheldonh avatar
sheldonh

asdf vs other tooling for dev setup… I love these things but dang so much cross over!

sheldonh avatar
sheldonh

Newer to asdf. Really DO NOT like that the asdf install doesn’t just setup plugins + install in a project, as this means you still need a bootstrap step to install plugins.

I’ve used ansible before to do some of this but it’s not as focused on shims which I absolutely love (stop debugging path issues and let it just work!)

I’m rethinking my codespace/devtooling for 2022 and thinking of any new approach.

I currently use Chezmoi (which is awesome!) but really it’s more than dotfiles, I want a common set of tools like bat, fzf, and such to all be bootstrapped on Debian, Ubuntu, WSL2 ubuntu, mac all with 1-2 liner when possible.

sheldonh avatar
sheldonh

ANSIBLE

So… I primarily work in devcontainers right now.

Assuming I have python3 installed everywhere I could start to wrap up my toolkits in Ansible playbooks and just run the ansible comand to use my remote repo.

Ansible is kinda slow here but I can tolerate it. Not perfect and more work to debug overall, but probably the most mature, albeit overkill Benefit is reuse of the knowledge and tooling for other things whereas chezmoi and others are very much not reusable across other domains.

sheldonh avatar
sheldonh

Chezmoi

Works pretty well. Go templates, cross platform. Install scripts oriented, so not declarative so combining with asdf works well, but I need to maintain the plugin install + asdf install setup .

Most likely to succeed.

sheldonh avatar
sheldonh

Asdf

Combining with chezmoi seems powerful. I’m really not wowed by the first experience. I freaking wish it was asdf install and the .tool-versions (nitpick should be .tools-version) had the plugin path like

something like this.

pulumi, repopath, version

Having to run asdf plugin add pulmi && asdf install pulumi latest && asdf local pulumi latest to get my first tool file synced up is annoying and doesn’t provide a great experience.

sheldonh avatar
sheldonh

Docker

I’ve decided as much as I want a wrapper for docker cli tools, I think for dev tooling they complicate the basics tools in the environment. Since I already work in a container mostly nested containers add complexity. I prefer to run something that installs the tool for the platform a bit more intelligently, like asdf should (mac or linux, it should just find the right now). Ansible can but it’s more work.

it also complicates things if the tools are desired by vscode and other dev tools. That level of abstraction ends up being more work I feel.

sheldonh avatar
sheldonh

…. would love to hear what others do for those jumping between container driven workflows like Gitpod/Codespaces and such.

bradym avatar

We recently moved to a monorepo (whole other topic) and as part of that we created a setup script so all you have to do to get your machine ready to go is run ./setup.

We’re using asdf in that setup script, and I’m a big fan. Our monorepo includes a .tool-versions file, and the script uses it to set things up. Here’s what I did in that script:

CURRENT_ASDF_PLUGINS=$(asdf plugin list || true)

# shellcheck disable=SC2034
while read -r PLUGIN VERSION || [[ -n "$PLUGIN" ]]; do
    if ! (echo "$CURRENT_ASDF_PLUGINS" | grep "$PLUGIN" &>/dev/null); then
        asdf plugin-add "$PLUGIN" || true
    fi

    # Install tool
    asdf install "$PLUGIN" "$VERSION"
    # enable running tool outside of monorepo directory
    asdf global "$PLUGIN" "$VERSION"
done < "${DIR}/.tool-versions"
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

@Igor Rodionov is a big fan of https://github.com/EnvCLI/EnvCLI

GitHub - EnvCLI/EnvCLI: Don't install Node, Go, ... locally - use containers you define within your project. If you have a new machine / other contributors you just have to install docker and envcli to get started.attachment image

Don&#39;t install Node, Go, … locally - use containers you define within your project. If you have a new machine / other contributors you just have to install docker and envcli to get started. - …

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

it’s a hybrid between using containers and native

sheldonh avatar
sheldonh

Nice!

@bradym I use a similar approach with Mage (Go based Make files, super cool!) right now. Asdf wasn’t as smooth of a setup as I had hoped in general, but it might be one of the best options.

it’s funny because all of this was initiated by my movement to a monorepo structure too! :slightly_smiling_face:

Right now I run mage init and it runs all dev tooling setup. Asdf might be the best (was considering replacing nvm), but was just checking. @Erik Osterman (Cloud Posse) i’ll check that out. I actually haven’t seen that so I’ll take a look. Thank you!

sheldonh avatar
sheldonh

I use mage right now because it is the closest thing to the build harness style project Cloudposse put together.

I can have one file doing my import from remote repo and all my tasks are autodisovered. I created this repo based on that https://github.com/sheldonhull/magetools

Working pretty well though because it does a bit of magic for commands you can’t easily test your commands like in standard Go.

It gets out of the way though so overall the experience has been stellar

GitHub - sheldonhull/magetools: General tooling helpers for simplifying cross repository automation using Mage

General tooling helpers for simplifying cross repository automation using Mage - GitHub - sheldonhull/magetools: General tooling helpers for simplifying cross repository automation using Mage

sheldonh avatar
sheldonh

Now I just use something like

go
//go:build mage
package main 

import (

	// mage:import
	_ "github.com/sheldonhull/magetools/gotools" // gotools provides Go tasks such as linting and testing

	// mage:import
	_ "github.com/sheldonhull/magetools/licensing" // licensing provides a license checker and vendor tooling for the project
)

And when you run go run mage.go init or mage all the remote tasks get imported and used. I loved that because of how cool build-harness was but I wanted to write reusable common tasks in Go I could use everywhere.

now i just drop those files in, run go mod tidy and it’s ready. If a linter/tool is missing it installs it when it finds it missing.

Non-go tools are a different matter though, and was looking for something inbetween scripts and ansible, but I guess asdf is going to be the closest to this.

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

I’d like to take another look at this now and see if it would add some value to tie it into atmos (if possible)

sheldonh avatar
sheldonh

It’s not easy to test because it does autodiscovery of functions based on signature. But overall, i’m really happy with it since it gets out of the way pretty much like make/task style files do. I don’t personally want to write a lot of tests on my tasks since they often interact with files and such.

sheldonh avatar
sheldonh

Really the only big complaint is that flags aren’t supported, so it focuses on very simple inputs like

mage publish myproject dev and I personally prefer mage publish -project myproject -env dev as it’s less error prone. For that compromise though I’m fine as the remote import of tasks works so well I can reuse all my work in many places.

sheldonh avatar
sheldonh

This is one thing I really like with the power of go.

I wrap the start of the function with something like this

	start := time.Now()
	defer func(start time.Time) {
		if err == nil {
			pterm.Success.Printf(":white_check_mark: BuildAll[%s]\n", relTime(start))
		}
	}(start)

I then also have a defer function that builds a report of all the variables as I go through a more complex workflow. Then no matter if it fails or not that defer executes and I get a nice table output for debugging or summarization of all the configured values I used. Saves me time debugging stuff.

SweetOps avatar
SweetOps
08:00:08 PM

Hey everyone, give a warm welcome to our newest members!

  • @jmederos
  • @Raim
  • @Benedikt Dollinger
  • @Patrick S
  • @Viren Shah

Good to have you here =)

wave2

2022-01-12

SweetOps avatar
SweetOps
08:00:16 PM

Hey everyone, give a warm welcome to our newest members!

  • @Ravi Kant Sharma
  • @Zsolt Martin
  • @Zee
  • @Alex Bowers
  • @SomberWolf

Good to have you here =)

wave1

2022-01-13

SweetOps avatar
SweetOps
08:00:05 PM

Hey everyone, give a warm welcome to our newest members!

  • @Adam Hicks
  • @Shilpa
  • @Ramon de la Cruz Ariza
  • @Matthew
  • @Jonás Márquez
  • @Roxana Ciobanu
  • @sharadpatel2593
  • @Anhad Mathur

Good to have you here =)

wave4

2022-01-14

Asis avatar

Hello everyone , Looking for resources on Openshift Kubernetes Any help is appreciated

SweetOps avatar
SweetOps
08:00:04 PM

Hey everyone, give a warm welcome to our newest members!

  • @benazu25
  • @Muthu
  • @medinamissy
  • @Mark

Good to have you here =)

1
wave1

2022-01-16

SweetOps avatar
SweetOps
08:00:04 PM

Hey everyone, give a warm welcome to our newest members!

  • @oliver661
  • @signal
  • @Eddie Nazarov
  • @François Prot

Good to have you here =)

wave2

2022-01-17

SweetOps avatar
SweetOps
08:06:06 PM

Hey everyone, give a warm welcome to our newest members!

  • @Sean Huggins
  • @Falk Eysen
  • @Matthieu Cuny
  • @Manolis
  • @Maya Aravot
  • @Alan Kiš
  • @javi574

Good to have you here =)

wave2

2022-01-18

SweetOps avatar
SweetOps
08:00:07 PM

Hey everyone, give a warm welcome to our newest members!

  • @Isaac
  • @Manish Khadka
  • @Michael Burns
  • @mark.iannucci

Good to have you here =)

1
wave3
1

2022-01-19

SweetOps avatar
SweetOps
08:00:05 PM

Hey everyone, give a warm welcome to our newest members!

  • @Kartik V
  • @Danish Kazi
  • @Riley
  • @Richard Feng
  • @Patrick Delaney

Good to have you here =)

wave2

2022-01-20

SweetOps avatar
SweetOps
08:00:05 PM

Hey everyone, give a warm welcome to our newest members!

  • @Kyias uulu Tynchtyk
  • @Hash
  • @andylamp
  • @Simon
  • @ian
  • @Taylor Smith

Good to have you here =)

wave4

2022-01-21

SweetOps avatar
SweetOps
08:00:28 PM

Hey everyone, give a warm welcome to our newest members!

  • @Tyler Pickett
  • @Nathan Papapietro
  • @Bart Coddens
  • @Laurent Lavaud
  • @Marcelo

Good to have you here =)

wave1
1

2022-01-22

SweetOps avatar
SweetOps
08:00:05 PM

Hey everyone, give a warm welcome to our newest members!

  • @Muhammad Ahmed

Good to have you here =)

wave1

2022-01-24

SweetOps avatar
SweetOps
08:00:06 PM

Hey everyone, give a warm welcome to our newest members!

  • @Joe Miller
  • @Carl Hjerpe
  • @Максим Коваль
  • @priyanka kumari

Good to have you here =)

1
wave2
Carl Hjerpe avatar
Carl Hjerpe

Cheers!

Was just checking out the S3 bucket w/ DynamoDB lock yesterday. Nice one! Though i put backend.tf in a different folder than the bucket config to not have to do any Voodoo by migrating state around (new project)

2022-01-25

SweetOps avatar
SweetOps
08:00:08 PM

Hey everyone, give a warm welcome to our newest members!

  • @Dan Garland
  • @Otilio Reyes
  • @Kevin Kenny
  • @Anthony Loera

Good to have you here =)

4

2022-01-26

Nick Kocharhook avatar
Nick Kocharhook

I’m attempting to create a PR to update the README in the ecs-codepipeline module. I changed the README.yaml and then followed the instructions in the README.md (make init then make readme), and I’m getting an error about missing gomplate. According to this GitHub comment, this isn’t a problem and I should just change the yaml and leave the README.md alone… Is that correct?

Allow use of existing IAM role for EC2 instance profile by JBarna · Pull Request #107 · cloudposse/terraform-aws-elastic-beanstalk-environmentattachment image

What Allow the user of the module to specify an existing IAM Role name for the instance profile This IAM role name will be used to create the instance profile that is assigned to the EC2 instances…

RB (Ronak) (Cloud Posse) avatar
RB (Ronak) (Cloud Posse)

yes the comment is true

Allow use of existing IAM role for EC2 instance profile by JBarna · Pull Request #107 · cloudposse/terraform-aws-elastic-beanstalk-environmentattachment image

What Allow the user of the module to specify an existing IAM Role name for the instance profile This IAM role name will be used to create the instance profile that is assigned to the EC2 instances…

RB (Ronak) (Cloud Posse) avatar
RB (Ronak) (Cloud Posse)

if you cannot update the readme md locally using make readme, the bot will do it when you submit the pr

RB (Ronak) (Cloud Posse) avatar
RB (Ronak) (Cloud Posse)

it will only fail if you’re working off a fork in an company org because a forked company org may not give explicit perms to the cloudposse bot

RB (Ronak) (Cloud Posse) avatar
RB (Ronak) (Cloud Posse)

a personal fork will allow the bot to run as expected

Nick Kocharhook avatar
Nick Kocharhook

Cool, thanks

SweetOps avatar
SweetOps
08:00:13 PM

Hey everyone, give a warm welcome to our newest members!

  • @Tammer Saleh
  • @Matan Shavit

Good to have you here =)

wave1

2022-01-27

Mauricio Wyler avatar
Mauricio Wyler

Hi. Did anybody try Earthly? https://github.com/earthly/earthly

GitHub - earthly/earthly: Repeatable buildsattachment image

Repeatable builds. Contribute to earthly/earthly development by creating an account on GitHub.

Wédney Yuri avatar
Wédney Yuri

Yes, we are using in some projects for complex pipelines.

GitHub - earthly/earthly: Repeatable buildsattachment image

Repeatable builds. Contribute to earthly/earthly development by creating an account on GitHub.

Mauricio Wyler avatar
Mauricio Wyler

Like it? Seems really interesting!

Wédney Yuri avatar
Wédney Yuri

Yes, it’s really easy to use.

1
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

At first, I saw this and I was like: Gawd.. another CI/CD system.

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

but this is actually cool - it’s a way to abstract away the standard CI processes so they can run locally as well as the CI dujour

Bart Coddens avatar
Bart Coddens

anyone who has experience with Next.js and cloudfront ?

Bart Coddens avatar
Bart Coddens

Currently cloudfront barfs when I set a behaviour that routes _next/static/* towards the target

SweetOps avatar
SweetOps
08:00:12 PM

Hey everyone, give a warm welcome to our newest members!

  • @kevin.huang
  • @Dương Quang Thọ
  • @Tejas Patel

Good to have you here =)

wave1

2022-01-28

SweetOps avatar
SweetOps
08:00:24 PM

Hey everyone, give a warm welcome to our newest members!

  • @Sedhupathy E
  • @Felix Torres
  • @Uku Taht
  • @Jackson Weimer

Good to have you here =)

wave1

2022-01-29

SweetOps avatar
SweetOps
08:00:02 PM

Hey everyone, give a warm welcome to our newest members!

  • @franklinjaradev
  • @Muhammad Badawy
  • @sajfer

Good to have you here =)

wave2

2022-01-31

Vadim Bauer avatar
Vadim Bauer

Hello Colleagues, we are planning to run some K8s workloads in China for our clients, now we are looking for a provider where to host our workloads.

If you have experience in deploying workloads in china, what do you consider are good Kubernetes as a service offerings in china. I am interested to find out what would developer choose? I am aware of the usual suspects:

• AWS

• Azure

• Alibaba Cloud

• Tencent Cloud

• Baidu Cloud

• AWS China

• China Telecom Cloud

• Huawei Cloud

• Baidu Cloud

• Kingsoft

• Inspur

• JD Cloud

Are they other we should take a look at? What would you choose and why?

SweetOps avatar
SweetOps
08:00:07 PM

Hey everyone, give a warm welcome to our newest members!

  • @Alexey Murz Korepov
  • @Wojtekdrz
  • @Natan Bensoussan

Good to have you here =)

wave2
    keyboard_arrow_up