Skip to content

Commit 01ca21e

Browse files
committed
change disable settings to enable instead
Signed-off-by: Markus Blaschke <mblaschke82@gmail.com>
1 parent d677c18 commit 01ca21e

File tree

4 files changed

+31
-28
lines changed

4 files changed

+31
-28
lines changed

README.md

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,26 @@ Usage:
1515
azure-janitor [OPTIONS]
1616
1717
Application Options:
18-
--dry-run Dry run (no delete) [$DRYRUN]
19-
--debug debug mode [$DEBUG]
20-
-v, --verbose verbose mode [$VERBOSE]
21-
--log.json Switch log output to json format [$LOG_JSON]
22-
--azure-environment= Azure environment name (default: AZUREPUBLICCLOUD) [$AZURE_ENVIRONMENT]
23-
--azure-subscription= Azure subscription ID [$AZURE_SUBSCRIPTION_ID]
24-
--janitor.interval= Janitor interval (time.duration) (default: 1h) [$JANITOR_INTERVAL]
25-
--janitor.tag= Janitor azure tag (string) (default: ttl) [$JANITOR_TAG]
26-
--janitor.deployment.ttl= Janitor deploument ttl (time.duration) (default: 8760h)
27-
[$JANITOR_DEPLOYMENT_TTL]
28-
--janitor.deployment.limit= Janitor deploument limit count (int) (default: 700) [$JANITOR_DEPLOYMENT_LIMIT]
29-
--janitor.disable.resourcegroups Disable Azure ResourceGroups cleanup [$JANITOR_DISABLE_RESOURCEGROUPS]
30-
--janitor.disable.resources Disable Azure Resources cleanup [$JANITOR_DISABLE_RESOURCES]
31-
--janitor.disable.deployments Disable Azure Deployments cleanup [$JANITOR_DISABLE_DEPLOYMENTS]
32-
--janitor.filter.resourcegroups= Additional $filter for Azure REST API for ResourceGroups
33-
[$JANITOR_FILTER_RESOURCEGROUPS]
34-
--janitor.filter.resources= Additional $filter for Azure REST API for Resources [$JANITOR_FILTER_RESOURCES]
35-
--bind= Server address (default: :8080) [$SERVER_BIND]
18+
--dry-run Dry run (no delete) [$DRYRUN]
19+
--debug debug mode [$DEBUG]
20+
-v, --verbose verbose mode [$VERBOSE]
21+
--log.json Switch log output to json format [$LOG_JSON]
22+
--azure-environment= Azure environment name (default: AZUREPUBLICCLOUD) [$AZURE_ENVIRONMENT]
23+
--azure-subscription= Azure subscription ID [$AZURE_SUBSCRIPTION_ID]
24+
--janitor.interval= Janitor interval (time.duration) (default: 1h) [$JANITOR_INTERVAL]
25+
--janitor.tag= Janitor azure tag (string) (default: ttl) [$JANITOR_TAG]
26+
--janitor.deployment.ttl= Janitor deploument ttl (time.duration) (default: 8760h) [$JANITOR_DEPLOYMENT_TTL]
27+
--janitor.deployment.limit= Janitor deploument limit count (int) (default: 700) [$JANITOR_DEPLOYMENT_LIMIT]
28+
--janitor.enable.resourcegroups Enable Azure ResourceGroups cleanup [$JANITOR_ENABLE_RESOURCEGROUPS]
29+
--janitor.enable.resources Enable Azure Resources cleanup [$JANITOR_ENABLE_RESOURCES]
30+
--janitor.enable.deployments Enable Azure Deployments cleanup [$JANITOR_ENABLE_DEPLOYMENTS]
31+
--janitor.filter.resourcegroups= Additional $filter for Azure REST API for ResourceGroups
32+
[$JANITOR_FILTER_RESOURCEGROUPS]
33+
--janitor.filter.resources= Additional $filter for Azure REST API for Resources [$JANITOR_FILTER_RESOURCES]
34+
--bind= Server address (default: :8080) [$SERVER_BIND]
3635
3736
Help Options:
38-
-h, --help Show this help message
37+
-h, --help Show this help message
3938
```
4039

4140
for Azure API authentication (using ENV vars) see https://github.com/Azure/azure-sdk-for-go#authentication

config/opts.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ type (
3232
DeploymentsTtl time.Duration `long:"janitor.deployment.ttl" env:"JANITOR_DEPLOYMENT_TTL" description:"Janitor deploument ttl (time.duration)" default:"8760h"`
3333
DeploymentsLimit int64 `long:"janitor.deployment.limit" env:"JANITOR_DEPLOYMENT_LIMIT" description:"Janitor deploument limit count (int)" default:"700"`
3434

35-
DisableResourceGroups bool `long:"janitor.disable.resourcegroups" env:"JANITOR_DISABLE_RESOURCEGROUPS" description:"Disable Azure ResourceGroups cleanup"`
36-
DisableResources bool `long:"janitor.disable.resources" env:"JANITOR_DISABLE_RESOURCES" description:"Disable Azure Resources cleanup"`
37-
DisableDeployments bool `long:"janitor.disable.deployments" env:"JANITOR_DISABLE_DEPLOYMENTS" description:"Disable Azure Deployments cleanup"`
35+
EnableResourceGroups bool `long:"janitor.enable.resourcegroups" env:"JANITOR_ENABLE_RESOURCEGROUPS" description:"Enable Azure ResourceGroups cleanup"`
36+
EnableResources bool `long:"janitor.enable.resources" env:"JANITOR_ENABLE_RESOURCES" description:"Enable Azure Resources cleanup"`
37+
EnableDeployments bool `long:"janitor.enable.deployments" env:"JANITOR_ENABLE_DEPLOYMENTS" description:"Enable Azure Deployments cleanup"`
3838

3939
AdditionalFilterResourceGroups *string `long:"janitor.filter.resourcegroups" env:"JANITOR_FILTER_RESOURCEGROUPS" description:"Additional $filter for Azure REST API for ResourceGroups"`
4040
AdditionalFilterResources *string `long:"janitor.filter.resources" env:"JANITOR_FILTER_RESOURCES" description:"Additional $filter for Azure REST API for Resources"`

janitor.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,15 +63,15 @@ func (j *Janitor) Run() {
6363
go func(subscription subscriptions.Subscription) {
6464
defer wgMain.Done()
6565

66-
if !opts.Janitor.DisableResourceGroups {
66+
if opts.Janitor.EnableResourceGroups {
6767
j.runResourceGroups(ctx, subscription, opts.Janitor.FilterResourceGroups, callbackTtlMetrics)
6868
}
6969

70-
if !opts.Janitor.DisableResources {
70+
if opts.Janitor.EnableResources {
7171
j.runResources(ctx, subscription, opts.Janitor.FilterResources, callbackTtlMetrics)
7272
}
7373

74-
if !opts.Janitor.DisableDeployments {
74+
if opts.Janitor.EnableDeployments {
7575
j.runDeployments(ctx, subscription, callbackTtlMetrics)
7676
}
7777
}(subscription)

main.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,19 +56,19 @@ func main() {
5656

5757
log.Infof("init Janitor")
5858

59-
if !opts.Janitor.DisableResourceGroups {
59+
if opts.Janitor.EnableResourceGroups {
6060
log.Infof("enabled Azure ResourceGroups cleanup (filter: %s)", opts.Janitor.FilterResourceGroups)
6161
} else {
6262
log.Infof("disabled Azure ResourceGroups cleanup")
6363
}
6464

65-
if !opts.Janitor.DisableResources {
65+
if opts.Janitor.EnableResources {
6666
log.Infof("enabled Azure Resources cleanup (filter: %s)", opts.Janitor.FilterResources)
6767
} else {
6868
log.Infof("disabled Azure Resources cleanup")
6969
}
7070

71-
if !opts.Janitor.DisableDeployments {
71+
if opts.Janitor.EnableDeployments {
7272
log.Infof("enabled Azure ResourceGroups Deployments cleanup (limit: %v, ttl: %v)", opts.Janitor.DeploymentsLimit, opts.Janitor.DeploymentsTtl.String())
7373
} else {
7474
log.Infof("disabled Azure ResourceGroups Deployments cleanup")
@@ -152,6 +152,10 @@ func initArgparser() {
152152
if opts.Janitor.AdditionalFilterResources != nil {
153153
opts.Janitor.FilterResources = *opts.Janitor.AdditionalFilterResources
154154
}
155+
156+
if !opts.Janitor.EnableResourceGroups && !opts.Janitor.EnableResources && !opts.Janitor.EnableDeployments {
157+
log.Fatal("no janitor task (resources, resourcegroups, deployments) enabled, not starting")
158+
}
155159
}
156160

157161
// Init and build Azure authorzier

0 commit comments

Comments
 (0)