New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

awsass

Package Overview
Dependencies
Maintainers
1
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

awsass - npm Package Compare versions

Comparing version 0.0.10 to 0.0.11

16

awsass.js

@@ -16,4 +16,4 @@ const { program } = require("commander");

.option("--lambda-kill-warm-instances", "kill warm lambda instances by doing a silent redeployment")
// .option("--ecr-ecs-ephemeral-create", "creates an ephemeral ecr/ecs combination")
// .option("--ecr-ecs-ephemeral-destroy", "destroys an ephemeral ecr/ecs combination")
.option("--ecr-ecs-ephemeral-create", "creates an ephemeral ecr/ecs combination")
.option("--ecr-ecs-ephemeral-destroy", "destroys an ephemeral ecr/ecs combination")
// .option("--version-based-lambda-deploy", "deploy a version-based lambda function")

@@ -30,3 +30,9 @@ .option("--task-definition <task-definition>", "ecs task definition")

.option("--environment-variable <keyvalue...>", "overwrite environment variable key:value")
.option("--execution-role-arn <execution-role-arn>", "execution-role-arn")
.option("--task-role-arn <task-role-arn>", "task-role-arn")
.option("--cpu-units <cpu-units>", "cpu-units", "256")
.option("--memory-units <memory-units>", "memory-units", "512")
.option("--ephemeral-id <ephemeral-id>", "ephemeral id");
program.parse(process.argv);

@@ -69,1 +75,7 @@ const options = program.opts();

Lib.lambdaKillWarmInstances(options["lambdaFunction"], resultFunc);
if (options["ecrEcsEphemeralCreate"])
Lib.ecrEcsEphemeralCreate(options["executionRoleArn"], options["taskRoleArn"], options["cpuUnits"], options["memoryUnits"], resultFunc);
if (options["ecrEcsEphemeralDestroy"])
Lib.ecrEcsEphemeralDestroy(options["ephemeralId"], resultFunc);

2

package.json
{
"name": "awsass",
"description": "AWSASS is an assistant to AWS, mostly for running better scripts.",
"version": "0.0.10",
"version": "0.0.11",
"author": "Jsonize",

@@ -6,0 +6,0 @@ "repository": "https://github.com/jsonize/awsass",

const AWS = require("aws-sdk");
const Docker = require(__dirname + "/docker.js");
const OS = require("os");

@@ -269,2 +270,95 @@ const nameValueArrayToObject = function (arr) {

});
},
ecrEcsEphemeralCreate: function (executionRoleArn, taskRoleArn, cpuUnits, memoryUnits, callback) {
const ecr = new AWS.ECR({apiVersion: '2015-09-21'});
const ecs = new AWS.ECS({apiVersion: '2014-11-13'});
const cloudwatchlogs = new AWS.CloudWatchLogs({apiVersion: '2014-03-28'});
const ephemeralId = "awsass-ephemeral-" + OS.userInfo().username + "-" + (new Date()).getTime();
ecr.createRepository({
repositoryName: ephemeralId
}, function (err, createRepoResult) {
if (err) {
callback(err);
return;
}
ecs.registerTaskDefinition({
family: ephemeralId,
cpu: cpuUnits,
memory: memoryUnits,
networkMode: "awsvpc",
executionRoleArn: executionRoleArn,
taskRoleArn: taskRoleArn,
requiresCompatibilities: ["FARGATE"],
containerDefinitions: [{
name: ephemeralId,
essential: true,
memoryReservation: memoryUnits,
cpu: cpuUnits,
image: createRepoResult.repository.repositoryUri,
logConfiguration: {
logDriver: "awslogs",
options: {
"awslogs-group": "/ecs/" + ephemeralId,
"awslogs-region": AWS.config.region,
"awslogs-stream-prefix": "ecs"
}
}
}]
}, function (err, registerTaskDef) {
if (err) {
callback(err);
return;
}
cloudwatchlogs.createLogGroup({
logGroupName: "/ecs/" + ephemeralId,
}, function (err, logGroupResult) {
if (err) {
callback(err);
return;
}
callback(undefined, {
ephemeralId: ephemeralId,
repositoryUri: createRepoResult.repository.repositoryUri,
taskDefinitionArn: registerTaskDef.taskDefinition.taskDefinitionArn
});
});
});
});
},
ecrEcsEphemeralDestroy: function (ephemeralId, callback) {
const ecr = new AWS.ECR({apiVersion: '2015-09-21'});
const ecs = new AWS.ECS({apiVersion: '2014-11-13'});
const cloudwatchlogs = new AWS.CloudWatchLogs({apiVersion: '2014-03-28'});
cloudwatchlogs.deleteLogGroup({
logGroupName: "/ecs/" + ephemeralId
}, function (err, logGroupResult) {
if (err) {
callback(err);
return;
}
ecs.deregisterTaskDefinition({
taskDefinition: ephemeralId + ":1"
}, function (err, deregisterTaskDef) {
if (err) {
callback(err);
return;
}
ecr.deleteRepository({
repositoryName: ephemeralId,
force: true
}, function (err, deleteRepoResult) {
if (err) {
callback(err);
return;
}
callback(undefined, {
ephemeralId: ephemeralId,
repositoryUri: deleteRepoResult.repository.repositoryUri,
taskDefinitionArn: deregisterTaskDef.taskDefinition.taskDefinitionArn
});
});
});
});
}

@@ -271,0 +365,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc