profile
viewpoint

bwagner5/Dynamic-IP-Route53 11

Updates a Route53 Zone with your computer's public IP

bwagner5/docker-forensics-tools 3

Forensics Tool Collection with Docker Containers to replace a "Live CD" Toolset.

bwagner5/docker-the-sleuth-kit 2

Docker Container which builds and runs The Sleuth Kit

bwagner5/docker-mozilla-investigator 1

Docker Container for Mozilla InvestiGator (MIG) and dependencies including PostGres and RabbitMQ

bwagner5/EP_Public_Website 1

This repo contains the public website for Events Production, the A/V department of George Mason University

bwagner5/acl-search 0

acl-search is a Python utility to search through a Juniper ACL file to find intersecting destination IPs and return the full term.

bwagner5/amazon-ec2-instance-selector 0

A CLI tool and go library which recommends instance types based on resource criteria like vcpus and memory

bwagner5/amazon-ec2-metadata-mock 0

A tool to simulate Amazon EC2 instance metadata

bwagner5/arlo-go 0

WIP - (BETA) - Go package for interacting with Netgear's Arlo camera system.

bwagner5/autopsy 0

Autopsy® is a digital forensics platform and graphical interface to The Sleuth Kit® and other digital forensics tools. It can be used by law enforcement, military, and corporate examiners to investigate what happened on a computer. You can even use it to recover photos from your camera's memory card. Installers can be found at: http://www.sf.net/projects/autopsy/files/autopsy

issue commentaws/amazon-ec2-metadata-mock

Cant emulate node draining within 2 minutes

@roeP the PDB is only going to prevent the eviction, you would need another mechanism to trigger a scale up since cluster-autoscaler will only scale up based on the "pending pods" metric. You can over-provision your cluster to achieve no downtime when a node disappears. That is probably your best bet right now. Over provisioning involves scheduling a configurable amount of headroom via low priority pause-pods. This will ensure that you have space available for pods on another node.

When you receive a spot interruption notice, the aws-node-termination-handler will try to evict and then your pods will get rescheduled on-top of the pause-pods that were over provisioned for you.

NOTE: the following functionality does not exist today and probably doesn't make sense to add: The aws-node-termination-handler could have functionality added to look at the pods it is evicting and scale up the number of pods on the node that is being drained after it cordons the node. I'm not sure this would be very helpful though. If a node has not already been booted, it's unlikely to have a node be launched and the pods rescheduled within the 2 minute window, so the better solution is still over-provisioning the cluster.

Hope that helps

More info on cluster-overprovisioner:

  • https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#how-can-i-configure-overprovisioning-with-cluster-autoscaler
  • https://medium.com/scout24-engineering/cluster-overprovisiong-in-kubernetes-79433cb3ed0e
roeP

comment created time in 19 hours

issue commentkubernetes/kops

Declarative Resource Based Instance Selection

planning on using this go library that was recently open sourced to implement the declarative resource based instance group creation in the toolbox:

https://github.com/aws/amazon-ec2-instance-selector

bwagner5

comment created time in 2 days

issue commentaws/amazon-ec2-metadata-mock

Cant emulate node draining within 2 minutes

You can setup a Pod Disruption Budget (PDB) on your pods which will ensure that a configured number are always running. If a spot interruption notice is received, aws-node-termination-handler will attempt to cordon and drain the node but the PDB could stall the evictions if evicting would cause the pod count to drop below your configured threshold. But keep in mind that if the 2-minute window ends, your pods may be forced to be shutdown ungracefully since the instance itself will be automatically shutdown.

You can read more about Pod Disruption Budgets here: https://kubernetes.io/docs/concepts/workloads/pods/disruptions/

roeP

comment created time in 2 days

issue commentaws/aws-node-termination-handler

Manifests in the repository

Not a dumb suggestion at all! We actually have the resource files uploaded as static release assets on each release.

https://github.com/aws/aws-node-termination-handler/releases/tag/v1.4.0

There are two consumable versions:

  • all-resources.yaml - This file includes all kubernetes yaml docs in one file. This is good if you don't want to make any changes and apply it directly.
  • individual-resources.tar - This tar file includes the yaml documents in individual files. This can easily be used with kustomize for attribute modifications.

Hope this helps! Let us know if there is any room for improvement consuming these files (we should probably update docs to tell people this exists 😊 )

janludvikd3

comment created time in 4 days

fork bwagner5/autoscaler

Autoscaling components for Kubernetes

fork in 4 days

startedmhausenblas/cidrchk

started time in 9 days

startedjaypipes/aws-api-tools

started time in 10 days

pull request commentaws/aws-node-termination-handler

allow squid to tolerate all taints to stabilize e2e tests

there seems to still be a timing issue somewhere... I'll keep hunting to stabilize these tests.

bwagner5

comment created time in 11 days

PR opened aws/aws-node-termination-handler

allow squid to tolerate all taints to stabilize e2e tests

Issue #, if available: N/A

Description of changes: Make squid http proxy tolerate all taints for e2e tests.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+6 -0

0 comment

2 changed files

pr created time in 11 days

create barnchbwagner5/aws-node-termination-handler

branch : squid-tolerations

created branch time in 11 days

push eventaws/amazon-ec2-metadata-mock

Bryan™

commit sha ddd78e0abb04f65765ce805e09396251ebc4aef0

Update travis to sync readme with dockerhub and run license test on release (#17)

view details

push time in 11 days

PR merged aws/amazon-ec2-metadata-mock

Update travis to sync readme with dockerhub & run license test on release

Issue #, if available: N/A

Description of changes:

  • License test and sync read me to dockerhub scripts will execute on new Releases

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+7 -2

1 comment

1 changed file

brycahta

pr closed time in 11 days

push eventaws/aws-node-termination-handler

Brandon Wagner

commit sha 30128670bc91a6c7008c309bcf9706c9ee9a2a02

update travis to run license test on tag releases (#166)

view details

push time in 11 days

delete branch aws/aws-node-termination-handler

delete branch : travis-patch

delete time in 11 days

PR merged aws/aws-node-termination-handler

update travis to run license test on tag releases

Issue #, if available: N/A

Description of changes: Travis should run license test on tag releases too.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+1 -1

2 comments

1 changed file

bwagner5

pr closed time in 11 days

push eventbwagner5/aws-node-termination-handler

Brandon Wagner

commit sha 2d941c3e255a51f7ffaf86ecf3b88e2591fe6017

set idle conns timeout on webhook http client (#158)

view details

Brandon Wagner

commit sha b6477836cc81f6c2e82ca9840adf170472bbd0fc

fix enabling docker cli experimental features in travis env (#159)

view details

Ilya Shaisultanov

commit sha 0d528d632f8d3e9712da0fe678fc11240acc2fa4

Taint nodes on spot and scheduled events (#162) * Taint nodes on spot and scheduled events Fixes #160. Signed-off-by: Ilya Shaisultanov <ilya.shaisultanov@gmail.com>

view details

Brandon Wagner

commit sha ae4d988004216f84e9c1de23058e7fb342b0a7de

Update installation cmd in README (#165)

view details

push time in 11 days

startedaws/homebrew-tap

started time in 11 days

PR opened aws/homebrew-tap

Builds for multiple formulas

Issue #, if available: N/A

Description of changes: In order to support more AWS projects in the tap, this PR makes the build scripts generic and adds two more formulas.

In order to make the build scripts more generic, I've added more fields to the bottle-configs and moved it to a directory to house multiple json files. This will require an update to aws-sam-cli-bot.

Formula Additions:

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+269 -38

0 comment

12 changed files

pr created time in 11 days

push eventbwagner5/homebrew-tap

Brandon Wagner

commit sha 86712bae11d55762c69de54924bd3b351ead73c1

update the readme

view details

push time in 11 days

push eventbwagner5/homebrew-tap

Brandon Wagner

commit sha 50cf43a5d26d1dfc1a13f05ba478c85f4d9d1209

add ec2-metadata-mock formula

view details

push time in 11 days

push eventbwagner5/homebrew-tap

Brandon Wagner

commit sha 9c15dbe0adcaba3c1dbbd6e56e316ba991d7259b

cleanup scripts

view details

push time in 11 days

push eventbwagner5/homebrew-tap

Brandon Wagner

commit sha 0729d6ee07faeb9e64c7930bfe37be3fbc52d194

cleanup scripts

view details

push time in 11 days

push eventbwagner5/homebrew-tap

aws-sam-cli-bot

commit sha 7bd12fa1d67a64f260cd68ed71eab49520565729

chore: version bump to 0.50.0

view details

aws-sam-cli-bot

commit sha d5688db9c83f52ccc60614fdbe466e2db0526db4

chore: bottles for 0.50.0

view details

aws-sam-cli-bot

commit sha fa6d21456c5725b0b07671af40859f60338400eb

chore: version bump to 0.51.0

view details

aws-sam-cli-bot

commit sha 8518ab4903b3f081be8917491cc2d53ffe775f07

chore: bottles for 0.51.0

view details

Brandon Wagner

commit sha 712b9d4747ae718bad6d9b6f9ee9d2ee37ad4b04

make build-bottles.sh generic to accomadate building other formulas into bottles

view details

Brandon Wagner

commit sha dfff9571363334a6db3ab4f732f6bcafcd807c4c

moved formula build into a separate script and made build-bottles call build-formula

view details

push time in 12 days

pull request commentaws/aws-node-termination-handler

update travis to run license test on tag releases

hmmm this must be intermittent failures due to the taint. I noticed that coredns is being evicted since the master is also being tainted. I think I just need to prevent the ec2-metadata-test-proxy from being scheduled on the master node.

bwagner5

comment created time in 12 days

PR opened aws/aws-node-termination-handler

update travis to run license test on tag releases

Issue #, if available: N/A

Description of changes: Travis should run license test on tag releases too.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+1 -1

0 comment

1 changed file

pr created time in 12 days

create barnchaws/aws-node-termination-handler

branch : travis-patch

created branch time in 12 days

PR opened aws/amazon-ec2-instance-selector

update travis to run license test on release tags

Issue #, if available: N/A

Description of changes: Travis should run the license test on tag pushes too for releases.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+1 -1

0 comment

1 changed file

pr created time in 12 days

create barnchaws/amazon-ec2-instance-selector

branch : travis-tag-patch

created branch time in 12 days

startedpghazanfari/PokemonEngine

started time in 12 days

push eventaws/amazon-ec2-metadata-mock

Bryan™

commit sha a5aae8b43b3ee8689cbea4de938be263eb61773f

Renaming binary (#16)

view details

push time in 12 days

PR merged aws/amazon-ec2-metadata-mock

Renaming binary

Issue #, if available: N/A

Description of changes:

  • Removing amazon- prefix from binary name
  • Updated documentation, config files, and tests to reflect updated name
  • Updated finalCfgDir to align with updated name

Testing:

  • make clean && make build && make test were successful
  • make build-binaries resulted in binaries with the updated name

Notes:

  • I will update README installation instructions after v0.9.1 release is created and its assets populated correctly by travis

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+82 -77

1 comment

16 changed files

brycahta

pr closed time in 12 days

Pull request review commentaws/amazon-ec2-metadata-mock

Renaming binary

 import ( const ( 	defaultCfgFileName = "aemm-config" 	defaultCfgFileExt  = "json"-	finalCfgDir        = ".amazon-ec2-metadata-mock"+	finalCfgDir        = ".ec2-metadata-mock"

ah i c, it is supposed to change. cool!

brycahta

comment created time in 12 days

Pull request review commentaws/amazon-ec2-metadata-mock

Renaming binary

 Global Flags:   -I, --imdsv2                whether to enable IMDSv2 only, requiring a session token when submitting requests (default: false, meaning both IMDS v1 and v2 are enabled)   -d, --mock-delay-sec int    mock delay in seconds, relative to the application start time (default: 0 seconds)   -p, --port string           the HTTP port where the mock runs (default: 1338)-  -s, --save-config-to-file   whether to save processed config from all input sources in .amazon-ec2-metadata-mock/.aemm-config-used.json in $HOME or working dir, if homedir is not found (default: false)+  -s, --save-config-to-file   whether to save processed config from all input sources in .ec2-metadata-mock/.aemm-config-used.json in $HOME or working dir, if homedir is not found (default: false)

and this?

brycahta

comment created time in 12 days

Pull request review commentaws/amazon-ec2-metadata-mock

Renaming binary

 The tool can be configured in various ways: Use the `-c` flag to consume the configuration file and the `-s` flag to save an output of the configurations used by AEMM after precedence has been applied:  ```-$ amazon-ec2-metadata-mock -c path/to/config-overrides.json -s-Successfully saved final configuration to local file  /path/to/home/.amazon-ec2-metadata-mock/.aemm-config-used.json+$ ec2-metadata-mock -c path/to/config-overrides.json -s+Successfully saved final configuration to local file  /path/to/home/.ec2-metadata-mock/.aemm-config-used.json  -$ cat $HOME/.amazon-ec2-metadata-mock/.aemm-config-used.json+$ cat $HOME/.ec2-metadata-mock/.aemm-config-used.json

is this supposed to change too?

brycahta

comment created time in 12 days

push eventaws/amazon-ec2-instance-selector

Brandon Wagner

commit sha b33a58a23fe335c3824986896fadd268e4303f20

up readme installation version

view details

push time in 13 days

created tagaws/amazon-ec2-instance-selector

tagv0.8.3

A CLI tool and go library which recommends instance types based on resource criteria like vcpus and memory

created time in 14 days

release aws/amazon-ec2-instance-selector

v0.8.3

released time in 14 days

push eventaws/amazon-ec2-instance-selector

Brandon Wagner

commit sha 7b07f42e80d9750a629d4fa4960cbd6368ce19ae

fix push-docker-images script

view details

push time in 14 days

created tagaws/amazon-ec2-instance-selector

tagv0.8.2

A CLI tool and go library which recommends instance types based on resource criteria like vcpus and memory

created time in 14 days

release aws/amazon-ec2-instance-selector

v0.8.2

released time in 14 days

push eventaws/amazon-ec2-instance-selector

Brandon Wagner

commit sha 320d84972e2fecdf967c5b5af3fa10ce336dd7ed

fix in makefile to always create build-dir

view details

push time in 14 days

push eventaws/amazon-ec2-instance-selector

Brandon Wagner

commit sha 7ab52624628498985955bf794c7bb96f742c076b

travis fixes and standardize env vars

view details

push time in 14 days

PR opened aws/aws-node-termination-handler

Update installation cmd in README

Issue #, if available: N/A

Description of changes: Github doesn't support the "latest" tag on download links :(

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+1 -1

0 comment

1 changed file

pr created time in 14 days

create barnchaws/aws-node-termination-handler

branch : fix-readme-issue

created branch time in 14 days

created tagaws/amazon-ec2-instance-selector

tagv0.8.1

A CLI tool and go library which recommends instance types based on resource criteria like vcpus and memory

created time in 14 days

release aws/amazon-ec2-instance-selector

v0.8.1

released time in 14 days

PR opened aws/amazon-ec2-instance-selector

fix some cli parsing bugs and add unit test coverage

Issue #, if available: N/A

Description of changes: There were some bugs in the CLI parsing logic. Those bugs have been squashed and unit test coverage added so that they never break again :)

Specifically, removeIntersectingArgs() was not working properly. This function is used to handle multiple flagSets with proper error handling at a global level. This caused issues parsing shorthand args on the CLI, resulting in panics.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+573 -35

0 comment

8 changed files

pr created time in 14 days

create barnchbwagner5/amazon-ec2-instance-selector

branch : fix-cli-bugs

created branch time in 14 days

push eventaws/aws-node-termination-handler

Ilya Shaisultanov

commit sha 0d528d632f8d3e9712da0fe678fc11240acc2fa4

Taint nodes on spot and scheduled events (#162) * Taint nodes on spot and scheduled events Fixes #160. Signed-off-by: Ilya Shaisultanov <ilya.shaisultanov@gmail.com>

view details

push time in 15 days

issue closedaws/aws-node-termination-handler

Taint nodes when termination notification is detected

Similar to how cluster-autoscaler uses taints when marking nodes for scale down, aws-node-termination-handler should taint nodes which will be terminated, in addition to everything it does currently. This issue is slightly similar to #123 but the proposal is to add to the current behavior.

The reason for this is to make it possible to detect programmatically that a spot node becoming unschedulable in k8s is due to termination vs due to cluster issues. For example, when using prometheus-operator, default KubeNodeUnreachable alert looks like this:

kube_node_spec_taint{effect="NoSchedule",job="kube-state-metrics",key="node.kubernetes.io/unreachable"}

which often misfires for nodes being scaled down by the cluster-autoscaler. To fix the problem, we can drop nodes with a taint:

kube_node_spec_taint{effect="NoSchedule",job="kube-state-metrics",key="node.kubernetes.io/unreachable"} unless on(node) kube_node_spec_taint{effect="NoSchedule",job="kube-state-metrics",key="ToBeDeletedByClusterAutoscaler"}

If aws-node-termination-handler tainted nodes that taint could be incorporated into the alert as well.

I'm happy to PR this if there are no objections.

closed time in 15 days

diversario

PR merged aws/aws-node-termination-handler

Taint nodes on spot and scheduled events

Issue #, if available: #160

Description of changes:

Upon receiving an event, taint the affect node with the appropriate taint. Remove the taint if event is cancelled or completed.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+417 -24

4 comments

18 changed files

diversario

pr closed time in 15 days

push eventaws/amazon-ec2-instance-selector

Brandon Wagner

commit sha 96b4a842c8eec22b0bb58e276362f137e965104a

Update README.md

view details

push time in 15 days

push eventaws/amazon-ec2-instance-selector

Brandon Wagner

commit sha 57f388c3eb972e931650fc15d9ec843676a1f6c0

update readme and fix some usage text (#1)

view details

push time in 15 days

PR merged aws/amazon-ec2-instance-selector

Reviewers
update readme and fix some usage text

Issue #, if available: N/A

Description of changes: Fix up some readme and usage

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+37 -31

0 comment

4 changed files

bwagner5

pr closed time in 15 days

Pull request review commentaws/amazon-ec2-instance-selector

update readme and fix some usage text

 export AWS_SECRET_ACCESS_KEY="..." If you already have an AWS CLI profile setup, you can pass that directly into ec2-instance-selector:  ```-$ ec2-instance-selector --profile=my-aws-cli-profile --vcpus=2+$ ec2-instance-selector --profile my-aws-cli-profile --vcpus 2 --region us-east-1

fixing that soon, but for now, we'll just do away with them :D

bwagner5

comment created time in 15 days

issue openedaws/aws-node-termination-handler

Fix fix log output on e2e tests when a failure occurs

When running the E2E test suites, the NTH logs are printed on a successful test run, but they are not print when a test failure occurs. NTH logs should be printed when the tests succeed or fail.

created time in 15 days

Pull request review commentaws/aws-node-termination-handler

Taint nodes on spot and scheduled events

 func (n Node) removeLabel(key string) error { 	return nil } +// TaintSpotItn adds the spot termination notice taint onto a node+func (n Node) TaintSpotItn(eventID string) error {+	k8sNode, err := n.fetchKubernetesNode()+	if err != nil {+		return fmt.Errorf("Unable to fetch kubernetes node from API: %w", err)+	}++	if len(eventID) > 63 {+		eventID = eventID[:maxTaintValueLength]+	}++	return addTaint(k8sNode, n, SpotInterruptionTaint, eventID, corev1.TaintEffectNoSchedule)+}++// TaintScheduledMaintenance adds the scheduled maintenance taint onto a node+func (n Node) TaintScheduledMaintenance(eventID string) error {+	k8sNode, err := n.fetchKubernetesNode()+	if err != nil {+		return fmt.Errorf("Unable to fetch kubernetes node from API: %w", err)+	}++	if len(eventID) > 63 {+		eventID = eventID[:maxTaintValueLength]+	}++	return addTaint(k8sNode, n, ScheduledMaintenanceTaint, eventID, corev1.TaintEffectNoSchedule)+}++// CleanAllTaints removes NTH-specific taints from a node+func (n Node) CleanAllTaints() error {

to more clearly align with "RemoveNTHLabels" can you rename this to "RemoveNTHTaints" since it's not actually removing all node taints?

diversario

comment created time in 16 days

Pull request review commentaws/aws-node-termination-handler

Taint nodes on spot and scheduled events

 func (n Node) removeLabel(key string) error { 	return nil } +// TaintSpotItn adds the spot termination notice taint onto a node

Since this could be a breaking change for users upgrading, I think we should also add a flag in config (--taint-node) that defaults to false.

diversario

comment created time in 16 days

push eventbwagner5/homebrew-tap

Tarun

commit sha 3b9e61b0f63deb5e710caed515666b3d436cf17e

Revert "chore: version bump to 0.49.0" (#85) This reverts commit 48d1ebfc554e5ce269cfd4392d6c68a6c2ea6e07.

view details

aws-sam-cli-bot

commit sha c420afac8d1209fcf52ba2a80e35293cbc3e65bb

chore: version bump to 0.49.0

view details

aws-sam-cli-bot

commit sha fe337cbbd29e875c2ff3f425c0610445bd745aa0

chore: bottles for 0.49.0

view details

Brandon Wagner

commit sha aba72f08a0605d24b9c984283d4e6eae096523ec

make build-bottles.sh generic to accomadate building other formulas into bottles

view details

Brandon Wagner

commit sha 726c03b6941bceefe615c773fa9bdb6fdc5f0f36

moved formula build into a separate script and made build-bottles call build-formula

view details

push time in 18 days

push eventbwagner5/amazon-ec2-instance-selector

Brandon Wagner

commit sha 48de950c757efe20f07229cd8c787546ecf18d95

update readme and fix some usage text

view details

push time in 18 days

PR opened aws/amazon-ec2-instance-selector

update readme and fix some usage text

Issue #, if available: N/A

Description of changes: Fix up some readme and usage

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+35 -30

0 comment

2 changed files

pr created time in 18 days

create barnchbwagner5/amazon-ec2-instance-selector

branch : readme-changes

created branch time in 18 days

fork bwagner5/amazon-ec2-instance-selector

A CLI tool and go library which recommends instance types based on resource criteria like vcpus and memory

fork in 18 days

create barnchbwagner5/homebrew-tap

branch : builds-for-multiple-formulas

created branch time in 18 days

fork bwagner5/homebrew-tap

Homebrew formulae that allows installation of AWS tools through the Homebrew package manager.

fork in 18 days

pull request commentaws/aws-node-termination-handler

Taint nodes on spot and scheduled events

@diversario I believe it's because the cluster role does not have taint permissions. https://github.com/aws/aws-node-termination-handler/blob/master/config/helm/aws-node-termination-handler/templates/clusterrole.yaml

You can run the e2e tests locally:

make e2e-test

or all tests:

make test


Also, looks like some small formatting issues:

❌ goimports found a problem in go source files. See above for the files with problems.
Grade: A+ (92.6%)
Files: 24
Issues: 5
gofmt: 83%
	pkg/interruptionevent/spot-itn-event_internal_test.go
		Line 1: warning: file is not gofmted with -s (gofmt)
	pkg/node/node.go
		Line 1: warning: file is not gofmted with -s (gofmt)
	pkg/interruptionevent/scheduled-event_internal_test.go
		Line 1: warning: file is not gofmted with -s (gofmt)
	pkg/interruptionevent/spot-itn-event.go
		Line 1: warning: file is not gofmted with -s (gofmt)
go_vet: 100%
gocyclo: 95%
	test/ec2-metadata-test-proxy/cmd/ec2-metadata-test-proxy.go
		Line 100: warning: cyclomatic complexity 25 of function handleRequest() is high (> 15) (gocyclo)
golint: 95%
	pkg/node/node.go
		Line 272: warning: exported method Node.TaintSpotItn should have comment or be unexported (golint)
		Line 281: warning: exported method Node.TaintScheduledMaintenance should have comment or be unexported (golint)
		Line 290: warning: exported method Node.CleanAllTaints should have comment or be unexported (golint)
ineffassign: 91%
	pkg/interruptionevent/scheduled-event_internal_test.go
		Line 82: warning: ineffectual assignment to err (ineffassign)
	pkg/interruptionevent/spot-itn-event_internal_test.go
		Line 59: warning: ineffectual assignment to err (ineffassign)
license: 100%
misspell: 100%
diversario

comment created time in 18 days

push eventaws/amazon-ec2-metadata-mock

Bryan™

commit sha 050ec8256c41cc162f48b059a6fa649b40add4de

Updating run-license-test (#14)

view details

push time in 19 days

PR merged aws/amazon-ec2-metadata-mock

Updating run-license-test

Issue #, if available: N/A

Description of changes:

  • Updating run-license-test to use make build-binaries instead of make build because the latter will cause travisci to fail the build without explicit references to go in the yml file. The former executes the build in a docker container. 7th build is definitely going to pass!!

Testing:

  • make clean && make build && make test
    • make license-test passes

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+3 -3

0 comment

1 changed file

brycahta

pr closed time in 19 days

Pull request review commentaws/amazon-ec2-metadata-mock

Updating run-license-test

 set -euo pipefail  SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"-BUILD_BIN="$SCRIPTPATH/../../build"+BUILD_BIN="$SCRIPTPATH/../../build/bin" -BINARY_NAME="amazon-ec2-metadata-mock"+BINARY_NAME="amazon-ec2-metadata-mock-linux-amd64" LICENSE_TEST_TAG="aemm-license-test" -make -s -f $SCRIPTPATH/../../Makefile build+make -s -f $SCRIPTPATH/../../Makefile build-binaries

need to pass in SUPPORTED_PLATFORMS so it doesn't build for all and take forever

SUPPORTED_PLATFORMS="linux/amd64 make -s -f $SCRIPTPATH/../../Makefile build-binaries

brycahta

comment created time in 19 days

push eventaws/amazon-ec2-metadata-mock

Bryan™

commit sha 579fb66e88537a2fd0d85c95de99e7714d3dbc7e

Upgrade go version to v1.14 (#13)

view details

push time in 19 days

PR merged aws/amazon-ec2-metadata-mock

Upgrade go version to v1.14

Issue #, if available:

Description of changes:

  • Upgrading go version to latest
  • Updated travis.yml's make e2e-test target. It requires reference to go and gomodule because a build is kicked off beforehand (via make compile)

Testing:

  • make clean && make build && make test succeeds
  • kicked off custom build on travisci with travis.yml updates and tests pass

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+7 -5

0 comment

4 changed files

brycahta

pr closed time in 19 days

issue commentaws/aws-node-termination-handler

How can I get the termination information via webhook?

@HankChow I did a test with a flask server:

Flask Source Code

$ cat flaskapp.py
from flask import Flask
from flask import request
app = Flask(__name__)

@app.route('/', methods=['POST'])
def index():
    print(request.data)
    return

aws-node-termination-handler local binary

$ git clone git@github.com:aws/aws-node-termination-handler.git
$ cd aws-node-termination-handler
$ go build cmd/node-termination-handler.go
$ ./node-termination-handler --dry-run --node-name test --webhook-url http://localhost:5000 --metadata-url http://localhost:1338

EC2 Metadata Mock

$ curl -Lo ec2-metadata-mock https://github.com/aws/amazon-ec2-metadata-mock/releases/download/v0.9.0/amazon-ec2-metadata-mock-$(uname | tr '[:upper:]' '[:lower:]')-amd64
$ chmod +x ec2-metadata-mock
$ ./ec2-metadata-mock spotitn
...
2020/05/14 14:38:02 Initiating amazon-ec2-metadata-mock for EC2 Spot interruption notice on port 1338
...

Flask Stdout Log

flask run
 * Serving Flask app "flaskapp.py"
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
b'{"text":"[NTH][Instance Interruption] EventID: spot-itn-1229fe2a46345395a6df93665219d2f184213a5edefed2092a2343c2ff797b63 - Kind: SPOT_ITN - Description: Spot ITN received. Instance will be interrupted at 2020-05-14T19:34:54Z \n - Start Time: 2020-05-14 19:34:54 +0000 UTC"}'

Printing request.data from the flask handler shows the webhook data.

HankChow

comment created time in 19 days

push eventaws/amazon-ec2-metadata-mock

Bryan™

commit sha c398bf3c04d2bd20a318a73edf895a90d10684d9

Adding travis.yml for TravisCI integration (#12)

view details

push time in 19 days

PR merged aws/amazon-ec2-metadata-mock

Adding travis.yml for TravisCI integration

Issue #, if available: N/A

Description of changes:

  • Adding .travis.yml
    • replaced helm-sync-test with e2e-test
    • removed Deploy::sync-readme-to-dockerhub for now as README is too long to upload via API
  • Fixed spacing in config.go to pass go-report-card

Testing:

  • make clean && make build && make test succeed

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+29 -1

0 comment

2 changed files

brycahta

pr closed time in 19 days

push eventaws/amazon-ec2-metadata-mock

Prathibha Datta Kumar

commit sha 78b8648d61c763180899e9f57044c46e3b6dd308

update helm chart (#6) * rename helm charts dir * modify helm chart and add readme * adding support for AEMM K8s service * allowing empty values for env variables

view details

push time in 19 days

PR merged aws/amazon-ec2-metadata-mock

update helm chart

Description of changes:

  • rename helm charts dir
  • modify helm chart and
  • add readme and template/notes.txt
  • add AEMM K8s service support
  • add support for empty env vars

Testing: Successfully installed AEMM on my K8s cluster via helm (all commands in Readme)

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+396 -98

0 comment

17 changed files

pdk27

pr closed time in 19 days

issue commentaws/aws-node-termination-handler

How can I get the termination information via webhook?

@ulisse31 I believe you're seeing the same error as this issue https://github.com/aws/aws-node-termination-handler/issues/104. This was fixed in v1.3.0, so if you're on a version pre v1.3.0, upgrading to v1.3.1 or to the latest v1.4.0 release should fix it for you.

HankChow

comment created time in 20 days

startedaws-samples/amazon-k8s-node-drainer

started time in 20 days

delete branch aws/amazon-ec2-metadata-mock

delete branch : brycahta-patch-1

delete time in 20 days

push eventaws/amazon-ec2-metadata-mock

Bryan™

commit sha 2e5f0ff1078dfd63539c582a3cafcdd7edc1da21

Update README.md (#11) Removing code coverage badge

view details

push time in 20 days

PR merged aws/amazon-ec2-metadata-mock

Update README.md

Removing code coverage badge

Issue #, if available: N/A

Description of changes: N/A

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+0 -3

0 comment

1 changed file

brycahta

pr closed time in 20 days

push eventaws/amazon-ec2-metadata-mock

Bryan™

commit sha ac2f8c8406f014dfef955b8b54fd88ae67642757

Adding scripts for release target (#7) * Adding scripts for release target * sync push-docker-images with latest

view details

push time in 20 days

PR merged aws/amazon-ec2-metadata-mock

Adding scripts for release target

Issue #, if available: N/A

Description of changes:

  • Porting scripts/ from nth to aemm for make release target which will be called via TravisCi
  • Updated Makefile with corresponding targets
  • Added MacOS and Windows to SUPPORTED_PLATFORMS

Testing:

  • Pulled in helm changes locally
  • Changed IMG to my private dockerhub repo
  • Created test release+tag in AEMM GitHub repo
  • Ran make clean && make release && make test successfully

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

+389 -1

0 comment

7 changed files

brycahta

pr closed time in 20 days

issue commentaws/aws-node-termination-handler

Taint nodes when termination notification is detected

That sounds like a good addition to the project. A PR is certainly welcome!

We have a node labeling function already defined, so shouldn't be too hard to add a taint function in the node pkg.

Also, should the taint only be applied to spot interruption termination notices (ITNs) or should it also apply to EC2 scheduled maintenance events? Maybe it would make sense to have an aws-node-termination-handler/spot-itn and aws-node-termination-handler/scheduled-maintenance?

If we include tainting at this point in the code, we'll have the information needed to differentiate between a maintenance event and a spot ITN. Alternatively, the taint could be added to each of the drain events PreDrainTask hooks.

diversario

comment created time in 20 days

issue commentaws/aws-node-termination-handler

How can I get the termination information via webhook?

The default webhook request template is for slack webhooks. Depending on what server you're sending the request to, you may need to change the template to match the expected request body.

There's an example in our end-to-end test suite where we change the template to the expected request structure for amazon chime webhooks: https://github.com/aws/aws-node-termination-handler/blob/b6477836cc81f6c2e82ca9840adf170472bbd0fc/test/e2e/webhook-test#L30

HankChow

comment created time in 20 days

Pull request review commentaws/amazon-ec2-metadata-mock

Adding scripts for release target

+#!/bin/bash+set -euo pipefail++SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"++REPO_ROOT_PATH=$SCRIPTPATH/../+MAKE_FILE_PATH=$REPO_ROOT_PATH/Makefile++VERSION=$(make -s -f $MAKE_FILE_PATH version)+PLATFORMS=("linux/amd64")+MANIFEST_IMAGES=""+MANIFEST=""++USAGE=$(cat << 'EOM'+  Usage: push-docker-images  [-p <platform pairs>]+  Pushes docker images for the platform pairs passed in w/ a dockerhub manifest++  Example: push-docker-images -p "linux/amd64,linux/arm"+          Optional:+            -p          Platform pair list (os/architecture) [DEFAULT: linux/amd64]+            -r          IMAGE REPO: set the docker image repo+            -v          VERSION: The application version of the docker image [DEFAULT: output of `make version`]+            -m          Create a docker manifest+EOM+)++# Process our input arguments+while getopts "mp:r:v:" opt; do+  case ${opt} in+    p ) # Platform Pairs+        IFS=',' read -ra PLATFORMS <<< "$OPTARG"+      ;;+    r ) # Image Repo+        IMAGE_REPO="$OPTARG"+      ;;+    v ) # Image Version+        VERSION="$OPTARG"+      ;;+    m ) # Docker manifest+        MANIFEST="true"+      ;;+    \? )+        echo "$USAGE" 1>&2+        exit+      ;;+  esac+done++if [[ ${#PLATFORMS[@]} -gt 1 && $MANIFEST != "true" ]]; then+    echo "Only one platform can be pushed if you do not create a manifest."+    echo "Try again with the -m option"+    exit 1+fi++for os_arch in "${PLATFORMS[@]}"; do+    os=$(echo $os_arch | cut -d'/' -f1)+    arch=$(echo $os_arch | cut -d'/' -f2)++    img_tag_w_platform="$IMAGE_REPO:$VERSION-$os-$arch"++    if [[ $MANIFEST == "true" ]]; then+        img_tag=$img_tag_w_platform+    else+        img_tag="$IMAGE_REPO:$VERSION"+        docker tag $img_tag_w_platform $img_tag+    fi++    docker push $img_tag+    MANIFEST_IMAGES="$MANIFEST_IMAGES $img_tag"+done++if [[ $MANIFEST == "true" ]]; then+    if [[ $(cat $HOME/.docker/config.json | jq .experimental) != "enabled" ]]; then

I just updated this in NTH, can you pull in the latest? https://github.com/aws/aws-node-termination-handler/blob/master/scripts/push-docker-images#L73

brycahta

comment created time in 22 days

fork bwagner5/ec2-fleet-plugin

The EC2 Spot Jenkins plugin launches EC2 Spot instances as worker nodes for Jenkins CI server, automatically scaling the capacity with the load.

fork in 22 days

startedjenkinsci/ec2-fleet-plugin

started time in 22 days

fork bwagner5/ec2-spot-jenkins-plugin

The EC2 Spot Jenkins plugin launches EC2 Spot instances as worker nodes for Jenkins CI server, automatically scaling the capacity with the load.

fork in 22 days

startedawslabs/ec2-spot-jenkins-plugin

started time in 22 days

PR opened aws/aws-node-termination-handler

fix enabling docker cli experimental features in travis env

Issue #, if available: N/A

Description of changes: Turning on experimental docker cli would not work if the docker config did not already exist.

  • Generate minimal docker config if one does not exist
  • Remove perl to switch on experimental and instead use jq

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+6 -3

0 comment

1 changed file

pr created time in 22 days

create barnchbwagner5/aws-node-termination-handler

branch : travis-test

created branch time in 22 days

PR opened aws/aws-node-termination-handler

set idle conns timeout on webhook http client

Issue #, if available: N/A

Description of changes: The newly added webhook-http-proxy-test was failing when testing with an actual https endpoint because the squid access log was not being written until the connection was closed. However, the go http client was keeping the connection open in the connection pool for reuse. There's no reason to reuse the http connection since the webhook is a one-time request and most often the instance is about to be terminated.

  • Set IdleConnTimeout to 1 second on the webhook http client
  • Switch Squid from daemon logging to stdio logging for instant flush
  • Use the full docker image hash for squid

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+6 -3

0 comment

3 changed files

pr created time in 22 days

push eventbwagner5/aws-node-termination-handler

Brandon Wagner

commit sha 3a12501ab4f00bbbd94c83cebf5de69b3f7303ee

set idle conns timeout on webhook http client

view details

push time in 22 days

push eventbwagner5/aws-node-termination-handler

Brandon Wagner

commit sha e5ace69bfdf33207599835ee32c711f0dcd75869

set idle conns timeout on webhook http client

view details

push time in 23 days

create barnchbwagner5/aws-node-termination-handler

branch : fix-squid-test

created branch time in 24 days

push eventbwagner5/aws-node-termination-handler

Brandon Wagner

commit sha 39297c841e3cf56ddbe8d429e5fb740986ee1674

readme update for installation instructions (#157)

view details

push time in 24 days

push eventaws/aws-node-termination-handler

Brandon Wagner

commit sha 39297c841e3cf56ddbe8d429e5fb740986ee1674

readme update for installation instructions (#157)

view details

push time in 24 days

delete branch aws/aws-node-termination-handler

delete branch : readme-update

delete time in 24 days

PR merged aws/aws-node-termination-handler

readme update for installation instructions

Issue #, if available: N/A

Description of changes: Update install instructions to use latest so we don't have to increment it when we release new versions.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

+1 -2

1 comment

1 changed file

bwagner5

pr closed time in 24 days

more