Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: loader script reboot #1041

Merged
merged 2 commits into from Aug 5, 2021
Merged

fix: loader script reboot #1041

merged 2 commits into from Aug 5, 2021

Conversation

tilo-chen
Copy link
Contributor

@tilo-chen tilo-chen commented Aug 5, 2021

Issue #, if available:

Description of changes:
Exit immediately after calling sudo reboot. Otherwise the script continues to run until the end. It'll create the alts/broken symlink and makes nucleus think it failed.

Why is this change necessary:
Without the fix, deployment with any component that requests reboot will fail.

How was this change tested:
Manual.

Any additional information or context required to review the change:

Checklist:

  • Updated the README if applicable
  • Updated or added new unit tests
  • Updated or added new integration tests
  • Updated or added new end-to-end tests
  • If your code makes a remote network call, it was tested with a proxy
  • You confirm that the change is backwards compatible

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

scripts/loader Outdated
@@ -79,6 +79,7 @@ while [ $j -le 3 ] && [ $sigterm_received -eq 0 ]; do
101)
echo "Rebooting host"
sudo reboot
exit 101
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will cause systemd to restart us which may or may not happen before the reboot. I think you need to just pause here

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After calling reboot, systemd will try to stop the service, so I think here systemd won't restart it after exit.
But how about just exit 0 here, because we finished successfully as far as systemd is concerned?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's probably OK, yes

@github-actions
Copy link

github-actions bot commented Aug 5, 2021

Unit Tests Coverage Report

File Coverage Lines Branches
All files 67% 72% 62%
com.aws.greengrass.deployment.activator.DeploymentActivator 31% 31% 0%
com.aws.greengrass.deployment.activator.DefaultActivator 0% 0% 0%
com.aws.greengrass.deployment.activator.DeploymentActivatorFactory 100% 100% 100%
com.aws.greengrass.deployment.activator.KernelUpdateActivator 92% 95% 90%
com.aws.greengrass.authorization.AuthorizationIPCAgent$ValidateAuthorizationTokenOperationHandler 93% 86% 100%
com.aws.greengrass.authorization.AuthorizationPolicyParser$1 100% 100% 0%
com.aws.greengrass.authorization.AuthorizationPolicyParser$2 0% 0% 0%
com.aws.greengrass.authorization.AuthorizationIPCAgent 100% 100% 0%
com.aws.greengrass.authorization.AuthorizationPolicyParser 84% 91% 77%
com.aws.greengrass.authorization.AuthorizationHandler 79% 86% 71%
com.aws.greengrass.authorization.AuthorizationModule 91% 97% 85%
com.aws.greengrass.authorization.AuthorizationPolicy 100% 100% 0%
com.aws.greengrass.util.IotSdkClientFactory$EnvironmentStage 56% 63% 50%
com.aws.greengrass.util.OrderedExecutorService 82% 81% 83%
com.aws.greengrass.util.IotSdkClientFactory 85% 87% 83%
com.aws.greengrass.util.CommitableFile 80% 89% 71%
com.aws.greengrass.util.DependencyOrder 100% 100% 100%
com.aws.greengrass.util.SerializerFactory 100% 100% 0%
com.aws.greengrass.util.BaseRetryableAccessor 95% 90% 100%
com.aws.greengrass.util.CommitableWriter 47% 70% 25%
com.aws.greengrass.util.Coerce 92% 92% 92%
com.aws.greengrass.util.IamSdkClientFactory 100% 100% 0%
com.aws.greengrass.util.OrderedExecutorService$OrderedTask 81% 88% 75%
com.aws.greengrass.util.ProxyUtils 77% 77% 77%
com.aws.greengrass.util.FileSystemPermission$Option 100% 100% 0%
com.aws.greengrass.util.LockScope 100% 100% 0%
com.aws.greengrass.util.NucleusPaths 94% 94% 0%
com.aws.greengrass.util.Exec$Copier 94% 93% 95%
com.aws.greengrass.util.Exec 56% 65% 47%
com.aws.greengrass.util.StsSdkClientFactory 0% 0% 0%
com.aws.greengrass.util.S3SdkClientFactory 81% 81% 0%
com.aws.greengrass.util.DefaultConcurrentHashMap 100% 100% 0%
com.aws.greengrass.util.Coerce$1 100% 100% 0%
com.aws.greengrass.util.MqttChunkedPayloadPublisher 96% 92% 100%
com.aws.greengrass.util.CommitableReader 66% 82% 50%
com.aws.greengrass.util.Utils$1 60% 60% 0%
com.aws.greengrass.util.RegionUtils 33% 33% 0%
com.aws.greengrass.util.Utils 79% 81% 76%
com.aws.greengrass.util.AppendableWriter 0% 0% 0%
com.aws.greengrass.util.RetryUtils 87% 92% 83%
com.aws.greengrass.util.Permissions 86% 98% 75%
com.aws.greengrass.util.EncryptionUtils 100% 100% 100%
com.aws.greengrass.util.Digest 83% 91% 75%
com.aws.greengrass.util.GreengrassServiceClientFactory 30% 28% 33%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$CmdDecorator 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$WindowsFileSystemPermissionView 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsUserAttributes 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$1 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$RunasDecorator 0% 0% 0%
com.aws.greengrass.componentmanager.plugins.docker.DefaultDockerClient 1% 1% 0%
com.aws.greengrass.componentmanager.plugins.docker.DockerApplicationManagerService 0% 0% 0%
com.aws.greengrass.componentmanager.plugins.docker.Registry 75% 100% 50%
com.aws.greengrass.componentmanager.plugins.docker.EcrAccessor 56% 62% 50%
com.aws.greengrass.componentmanager.plugins.docker.DockerImageDownloader 82% 73% 90%
com.aws.greengrass.componentmanager.plugins.docker.Image 66% 66% 0%
com.aws.greengrass.componentmanager.plugins.docker.Registry$RegistrySource 100% 100% 0%
com.aws.greengrass.componentmanager.plugins.docker.Registry$RegistryType 100% 100% 0%
com.aws.greengrass.componentmanager.plugins.docker.DockerImageArtifactParser 97% 98% 96%
com.aws.greengrass.componentmanager.plugins.docker.Registry$Credentials 75% 75% 0%
com.aws.greengrass.builtin.services.mqttproxy.MqttProxyIPCAgent 95% 96% 93%
com.aws.greengrass.builtin.services.mqttproxy.MqttProxyIPCAgent$SubscribeToIoTCoreOperationHandler 61% 72% 50%
com.aws.greengrass.builtin.services.mqttproxy.MqttProxyIPCAgent$PublishToIoTCoreOperationHandler 78% 78% 0%
vendored.com.google.common.util.concurrent.SmoothRateLimiter$SmoothBursty 70% 90% 50%
vendored.com.google.common.util.concurrent.RateLimiter$SleepingStopwatch$1 88% 77% 100%
vendored.com.google.common.util.concurrent.RateLimiter$SleepingStopwatch 100% 100% 0%
vendored.com.google.common.util.concurrent.RateLimiter 50% 64% 37%
vendored.com.google.common.util.concurrent.SmoothRateLimiter 77% 92% 62%
com.aws.greengrass.componentmanager.models.ComponentIdentifier 50% 50% 0%
com.aws.greengrass.componentmanager.models.ComponentMetadata 0% 0% 0%
com.aws.greengrass.componentmanager.models.PermissionType 58% 66% 50%
com.aws.greengrass.componentmanager.models.Permission 70% 100% 40%
com.aws.greengrass.util.platforms.StubResourceController 14% 14% 0%
com.aws.greengrass.util.platforms.Platform$1 100% 100% 0%
com.aws.greengrass.util.platforms.Platform 67% 75% 59%
com.aws.greengrass.util.platforms.Platform$FileSystemPermissionView 100% 100% 0%
com.aws.greengrass.dependency.State 55% 76% 34%
com.aws.greengrass.dependency.Context$Value 82% 87% 77%
com.aws.greengrass.dependency.EZPlugins 32% 40% 23%
com.aws.greengrass.dependency.Context$1 83% 83% 0%
com.aws.greengrass.dependency.Context 74% 80% 68%
com.aws.greengrass.dependency.InjectionActions 100% 100% 0%
com.aws.greengrass.mqttclient.spool.SpoolerStorageType 100% 100% 0%
com.aws.greengrass.mqttclient.spool.Spool 88% 96% 80%
com.aws.greengrass.mqttclient.spool.InMemorySpool 100% 100% 0%
com.aws.greengrass.componentmanager.KernelConfigResolver 77% 85% 70%
com.aws.greengrass.componentmanager.Unarchiver 3% 3% 0%
com.aws.greengrass.componentmanager.ComponentManager 69% 76% 62%
com.aws.greengrass.componentmanager.ClientConfigurationUtils 16% 20% 12%
com.aws.greengrass.componentmanager.ComponentStore 67% 70% 63%
com.aws.greengrass.componentmanager.ComponentServiceHelper 75% 100% 50%
com.aws.greengrass.componentmanager.DependencyResolver 97% 98% 96%
com.aws.greengrass.util.platforms.unix.UnixRunWithGenerator 79% 74% 84%
com.aws.greengrass.util.platforms.unix.UnixGroupAttributes 0% 0% 0%
com.aws.greengrass.util.platforms.unix.QNXPlatform 0% 0% 0%
com.aws.greengrass.util.platforms.unix.UnixPlatform$ShDecorator 68% 87% 50%
com.aws.greengrass.util.platforms.unix.UnixUserAttributes 58% 66% 50%
com.aws.greengrass.util.platforms.unix.UnixPlatform$SudoDecorator 73% 87% 58%
com.aws.greengrass.util.platforms.unix.UnixPlatform$PosixFileSystemPermissionView 100% 100% 100%
com.aws.greengrass.util.platforms.unix.DarwinPlatform 0% 0% 0%
com.aws.greengrass.util.platforms.unix.UnixPlatform$IdOption 100% 100% 0%
com.aws.greengrass.util.platforms.unix.UnixPlatform 39% 39% 38%
com.aws.greengrass.config.Topic 77% 84% 70%
com.aws.greengrass.config.UpdateBehaviorTree$PrunedUpdateBehaviorTree 80% 80% 0%
com.aws.greengrass.config.CaseInsensitiveString 65% 70% 60%
com.aws.greengrass.config.Node 88% 89% 87%
com.aws.greengrass.config.Topics 90% 91% 88%
com.aws.greengrass.config.ConfigurationWriter 74% 76% 72%
com.aws.greengrass.config.WhatHappened 100% 100% 0%
com.aws.greengrass.config.PlatformResolver 72% 82% 63%
com.aws.greengrass.config.ConfigurationReader$1 100% 100% 0%
com.aws.greengrass.config.Configuration 91% 97% 86%
com.aws.greengrass.config.ConfigurationReader 85% 93% 78%
com.aws.greengrass.config.UpdateBehaviorTree 100% 100% 100%
com.aws.greengrass.config.UpdateBehaviorTree$UpdateBehavior 100% 100% 0%
com.aws.greengrass.iot.IotConnectionManager 24% 43% 6%
com.aws.greengrass.iot.IotCloudHelper 78% 89% 66%
com.aws.greengrass.iot.model.IotCloudResponse 100% 100% 0%
com.aws.greengrass.deployment.bootstrap.BootstrapTaskStatus 100% 100% 0%
com.aws.greengrass.deployment.bootstrap.BootstrapManager 70% 80% 61%
com.aws.greengrass.deployment.bootstrap.BootstrapManager$1 100% 100% 0%
com.aws.greengrass.deployment.bootstrap.BootstrapSuccessCode 83% 100% 66%
com.aws.greengrass.deployment.bootstrap.BootstrapTaskStatus$ExecutionStatus 100% 100% 0%
com.aws.greengrass.status.FleetStatusDetails 100% 100% 0%
com.aws.greengrass.status.FleetStatusService$1 100% 100% 0%
com.aws.greengrass.status.FleetStatusService 85% 93% 78%
com.aws.greengrass.status.OverallStatus 100% 100% 0%
com.aws.greengrass.deployment.model.FailureHandlingPolicy 100% 100% 0%
com.aws.greengrass.deployment.model.DeploymentTaskMetadata 40% 40% 0%
com.aws.greengrass.deployment.model.RunWith 85% 95% 75%
com.aws.greengrass.deployment.model.DeploymentPackageConfiguration 57% 57% 0%
com.aws.greengrass.deployment.model.DeploymentDocument 87% 100% 75%
com.aws.greengrass.deployment.model.DeploymentDocument$SDKSerializer 100% 100% 0%
com.aws.greengrass.deployment.model.Deployment$DeploymentType 100% 100% 0%
com.aws.greengrass.deployment.model.Deployment 100% 100% 0%
com.aws.greengrass.deployment.model.Deployment$DeploymentStage 100% 100% 0%
com.aws.greengrass.deployment.model.DeploymentDocument$SDKDeserializer 80% 80% 0%
com.aws.greengrass.deployment.model.DeploymentResult$DeploymentStatus 100% 100% 0%
com.aws.greengrass.mqttclient.AwsIotMqttClient$1 88% 92% 83%
com.aws.greengrass.mqttclient.CallbackEventManager 91% 92% 91%
com.aws.greengrass.mqttclient.MqttTopic 97% 94% 100%
com.aws.greengrass.mqttclient.MqttClient$1 75% 100% 50%
com.aws.greengrass.mqttclient.PublishRequest 68% 87% 50%
com.aws.greengrass.mqttclient.MqttClient 78% 81% 74%
com.aws.greengrass.mqttclient.WrapperMqttClientConnection 90% 81% 100%
com.aws.greengrass.mqttclient.AwsIotMqttClient 86% 92% 80%
com.aws.greengrass.network.HttpClientProvider 50% 50% 0%
com.aws.greengrass.tes.TokenExchangeService 86% 98% 75%
com.aws.greengrass.tes.CredentialRequestHandler 91% 94% 87%
com.aws.greengrass.tes.CredentialRequestHandler$TESCache 100% 100% 0%
com.aws.greengrass.tes.HttpServerImpl 100% 100% 0%
com.aws.greengrass.tes.LazyCredentialProvider 27% 27% 0%
com.aws.greengrass.componentmanager.converter.RecipeLoader 75% 87% 62%
com.aws.greengrass.componentmanager.converter.RecipeLoader$RecipeFormat 100% 100% 0%
com.aws.greengrass.lifecyclemanager.GreengrassService$RunStatus 100% 100% 0%
com.aws.greengrass.lifecyclemanager.Periodicity 14% 17% 11%
com.aws.greengrass.lifecyclemanager.LogManagerHelper 100% 100% 0%
com.aws.greengrass.lifecyclemanager.Lifecycle 78% 82% 74%
com.aws.greengrass.lifecyclemanager.UnloadableService 77% 71% 83%
com.aws.greengrass.lifecyclemanager.RunWithPathOwnershipHandler 100% 100% 100%
com.aws.greengrass.lifecyclemanager.Kernel 71% 75% 68%
com.aws.greengrass.lifecyclemanager.KernelMetricsEmitter 100% 100% 100%
com.aws.greengrass.lifecyclemanager.KernelAlternatives 66% 75% 56%
com.aws.greengrass.lifecyclemanager.KernelCommandLine 83% 84% 82%
com.aws.greengrass.lifecyclemanager.ShellRunner$Default 69% 72% 66%
com.aws.greengrass.lifecyclemanager.GreengrassService 79% 85% 73%
com.aws.greengrass.lifecyclemanager.KernelLifecycle 78% 81% 75%
com.aws.greengrass.lifecyclemanager.PluginService 41% 50% 33%
com.aws.greengrass.lifecyclemanager.UpdateSystemPolicyService 7% 8% 7%
com.aws.greengrass.lifecyclemanager.GenericExternalService 39% 42% 36%
com.aws.greengrass.util.platforms.unix.linux.LinuxSystemResourceController 8% 10% 6%
com.aws.greengrass.util.platforms.unix.linux.Cgroup 61% 61% 0%
com.aws.greengrass.util.platforms.unix.linux.LinuxSystemResourceController$CgroupFreezerState 0% 0% 0%
com.aws.greengrass.util.platforms.unix.linux.LinuxPlatform 100% 100% 0%
com.aws.greengrass.deployment.converter.DeploymentDocumentConverter 84% 93% 75%
com.aws.greengrass.ipc.IPCEventStreamService 64% 78% 50%
com.aws.greengrass.ipc.AuthenticationHandler 16% 25% 8%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$UpdateConfigurationOperationHandler 76% 73% 80%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$ConfigurationUpdateOperationHandler 69% 78% 60%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$GetConfigurationOperationHandler 76% 81% 71%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$SendConfigurationValidityReportOperationHandler 86% 90% 83%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent 63% 77% 50%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$ValidateConfigurationUpdatesOperationHandler 85% 85% 0%
com.aws.greengrass.ipc.common.DefaultOperationHandler 0% 0% 0%
com.aws.greengrass.provisioning.ProvisioningConfigUpdateHelper 91% 100% 83%
com.aws.greengrass.provisioning.ProvisioningPluginFactory 0% 0% 0%
com.aws.greengrass.componentmanager.builtins.GreengrassRepositoryDownloader 51% 63% 40%
com.aws.greengrass.componentmanager.builtins.S3Downloader 77% 80% 75%
com.aws.greengrass.componentmanager.builtins.ArtifactDownloaderFactory 79% 78% 80%
com.aws.greengrass.componentmanager.builtins.ArtifactDownloader 83% 83% 83%
vendored.com.google.common.base.Stopwatch 43% 37% 50%
vendored.com.google.common.base.Ticker$1 100% 100% 0%
vendored.com.google.common.base.Ticker 100% 100% 0%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$UpdateStateOperationHandler 90% 90% 0%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$DeferComponentUpdateHandler 83% 84% 83%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent 22% 22% 0%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$SubscribeToComponentUpdateOperationHandler 72% 95% 50%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$PauseComponentHandler 96% 93% 100%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$ResumeComponentHandler 96% 93% 100%
com.aws.greengrass.builtin.services.pubsub.PubSubIPCEventStreamAgent$PublishToTopicOperationHandler 90% 80% 100%
com.aws.greengrass.builtin.services.pubsub.PubSubIPCEventStreamAgent 77% 89% 65%
com.aws.greengrass.builtin.services.pubsub.PubSubIPCEventStreamAgent$SubscribeToTopicOperationHandler 61% 61% 0%
com.aws.greengrass.telemetry.TelemetryAgent 71% 77% 65%
com.aws.greengrass.telemetry.TelemetryConfiguration 52% 65% 40%
com.aws.greengrass.telemetry.MetricsPayload 100% 100% 0%
com.aws.greengrass.telemetry.MetricsAggregator 86% 91% 81%
com.aws.greengrass.telemetry.PeriodicMetricsEmitter 100% 100% 0%
com.aws.greengrass.telemetry.TelemetryAgent$1 60% 60% 0%
com.aws.greengrass.telemetry.AggregatedMetric 100% 100% 0%
com.aws.greengrass.telemetry.SystemMetricsEmitter 100% 100% 0%
com.aws.greengrass.deployment.DeploymentConfigMerger 81% 83% 80%
com.aws.greengrass.deployment.DefaultDeploymentTask 65% 77% 53%
com.aws.greengrass.deployment.DeploymentDirectoryManager 71% 86% 56%
com.aws.greengrass.deployment.IotJobsHelper$IotJobsClientFactory 100% 100% 0%
com.aws.greengrass.deployment.IotJobsHelper$WrapperMqttConnectionFactory 100% 100% 0%
com.aws.greengrass.deployment.DeploymentConfigMerger$AggregateServicesChangeManager 73% 72% 75%
com.aws.greengrass.deployment.IotJobsHelper 57% 69% 46%
com.aws.greengrass.deployment.DeviceConfiguration$1 82% 100% 64%
com.aws.greengrass.deployment.DeviceConfiguration 79% 82% 76%
com.aws.greengrass.deployment.IotJobsHelper$1 85% 85% 0%
com.aws.greengrass.deployment.DeploymentDocumentDownloader 73% 86% 61%
com.aws.greengrass.deployment.DeploymentQueue 68% 69% 68%
com.aws.greengrass.deployment.ThingGroupHelper 29% 29% 0%
com.aws.greengrass.deployment.DeploymentService 63% 74% 52%
com.aws.greengrass.deployment.ShadowDeploymentListener 24% 33% 15%
com.aws.greengrass.deployment.ShadowDeploymentListener$1 14% 14% 0%
com.aws.greengrass.deployment.DeploymentStatusKeeper 82% 93% 71%
com.aws.greengrass.deployment.IotJobsClientWrapper 15% 15% 0%
com.aws.greengrass.deployment.IotJobsHelper$LatestQueuedJobs 69% 68% 70%
com.aws.greengrass.deployment.KernelUpdateDeploymentTask 78% 82% 75%
com.aws.greengrass.deployment.DynamicComponentConfigurationValidator 84% 94% 75%
com.aws.greengrass.testing.TestFeatureParameters 80% 93% 66%
com.aws.greengrass.testing.TestFeatureParameters$1 100% 100% 0%
com.aws.greengrass.util.orchestration.InitUtils 0% 0% 0%
com.aws.greengrass.util.orchestration.SystemServiceUtilsFactory 0% 0% 0%
com.aws.greengrass.util.orchestration.SystemdUtils 0% 0% 0%
com.aws.greengrass.ipc.modules.PubSubIPCService 68% 68% 0%
com.aws.greengrass.ipc.modules.MqttProxyIPCService 64% 64% 0%
com.aws.greengrass.ipc.modules.AuthorizationService 75% 75% 0%
com.aws.greengrass.ipc.modules.LifecycleIPCService 86% 86% 0%
com.aws.greengrass.ipc.modules.ConfigStoreIPCService 66% 66% 0%
com.aws.greengrass.easysetup.GreengrassSetup 71% 71% 70%
com.aws.greengrass.easysetup.DeviceProvisioningHelper 35% 51% 20%

Minimum allowed coverage is 65%

Generated by 🐒 cobertura-action against 2502e35

@github-actions
Copy link

github-actions bot commented Aug 5, 2021

Integration Tests Coverage Report

File Coverage Lines Branches
All files 57% 61% 53%
com.aws.greengrass.deployment.activator.DeploymentActivator 89% 79% 100%
com.aws.greengrass.deployment.activator.DefaultActivator 73% 82% 64%
com.aws.greengrass.deployment.activator.DeploymentActivatorFactory 100% 100% 100%
com.aws.greengrass.deployment.activator.KernelUpdateActivator 49% 48% 50%
com.aws.greengrass.authorization.AuthorizationIPCAgent$ValidateAuthorizationTokenOperationHandler 51% 53% 50%
com.aws.greengrass.authorization.AuthorizationPolicyParser$1 100% 100% 0%
com.aws.greengrass.authorization.AuthorizationPolicyParser$2 0% 0% 0%
com.aws.greengrass.authorization.AuthorizationIPCAgent 100% 100% 0%
com.aws.greengrass.authorization.AuthorizationPolicyParser 76% 80% 72%
com.aws.greengrass.authorization.AuthorizationHandler 77% 78% 75%
com.aws.greengrass.authorization.AuthorizationModule 69% 82% 56%
com.aws.greengrass.authorization.AuthorizationPolicy 0% 0% 0%
com.aws.greengrass.util.IotSdkClientFactory$EnvironmentStage 56% 63% 50%
com.aws.greengrass.util.OrderedExecutorService 63% 77% 50%
com.aws.greengrass.util.IotSdkClientFactory 0% 0% 0%
com.aws.greengrass.util.CommitableFile 65% 73% 57%
com.aws.greengrass.util.DependencyOrder 100% 100% 100%
com.aws.greengrass.util.SerializerFactory 100% 100% 0%
com.aws.greengrass.util.BaseRetryableAccessor 0% 0% 0%
com.aws.greengrass.util.CommitableWriter 47% 70% 25%
com.aws.greengrass.util.Coerce 44% 48% 40%
com.aws.greengrass.util.IamSdkClientFactory 0% 0% 0%
com.aws.greengrass.util.OrderedExecutorService$OrderedTask 45% 66% 25%
com.aws.greengrass.util.ProxyUtils 11% 15% 7%
com.aws.greengrass.util.FileSystemPermission$Option 100% 100% 0%
com.aws.greengrass.util.LockScope 100% 100% 0%
com.aws.greengrass.util.NucleusPaths 100% 100% 0%
com.aws.greengrass.util.Exec$Copier 94% 93% 95%
com.aws.greengrass.util.Exec 69% 78% 60%
com.aws.greengrass.util.StsSdkClientFactory 0% 0% 0%
com.aws.greengrass.util.S3SdkClientFactory 100% 100% 0%
com.aws.greengrass.util.DefaultConcurrentHashMap 0% 0% 0%
com.aws.greengrass.util.Coerce$1 0% 0% 0%
com.aws.greengrass.util.MqttChunkedPayloadPublisher 96% 92% 100%
com.aws.greengrass.util.CommitableReader 0% 0% 0%
com.aws.greengrass.util.Utils$1 100% 100% 0%
com.aws.greengrass.util.RegionUtils 45% 40% 50%
com.aws.greengrass.util.Utils 53% 59% 48%
com.aws.greengrass.util.AppendableWriter 0% 0% 0%
com.aws.greengrass.util.RetryUtils 21% 25% 16%
com.aws.greengrass.util.Permissions 74% 94% 55%
com.aws.greengrass.util.EncryptionUtils 29% 29% 0%
com.aws.greengrass.util.Digest 66% 83% 50%
com.aws.greengrass.util.GreengrassServiceClientFactory 92% 94% 90%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$CmdDecorator 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$WindowsFileSystemPermissionView 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsUserAttributes 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$1 0% 0% 0%
com.aws.greengrass.util.platforms.windows.WindowsPlatform$RunasDecorator 0% 0% 0%
com.aws.greengrass.componentmanager.plugins.docker.DefaultDockerClient 1% 1% 0%
com.aws.greengrass.componentmanager.plugins.docker.DockerApplicationManagerService 0% 0% 0%
com.aws.greengrass.componentmanager.plugins.docker.Registry 75% 100% 50%
com.aws.greengrass.componentmanager.plugins.docker.EcrAccessor 50% 51% 50%
com.aws.greengrass.componentmanager.plugins.docker.DockerImageDownloader 56% 63% 50%
com.aws.greengrass.componentmanager.plugins.docker.Image 66% 66% 0%
com.aws.greengrass.componentmanager.plugins.docker.Registry$RegistrySource 100% 100% 0%
com.aws.greengrass.componentmanager.plugins.docker.Registry$RegistryType 100% 100% 0%
com.aws.greengrass.componentmanager.plugins.docker.DockerImageArtifactParser 82% 89% 75%
com.aws.greengrass.componentmanager.plugins.docker.Registry$Credentials 75% 75% 0%
com.aws.greengrass.builtin.services.mqttproxy.MqttProxyIPCAgent 55% 60% 50%
com.aws.greengrass.builtin.services.mqttproxy.MqttProxyIPCAgent$SubscribeToIoTCoreOperationHandler 61% 72% 50%
com.aws.greengrass.builtin.services.mqttproxy.MqttProxyIPCAgent$PublishToIoTCoreOperationHandler 82% 82% 0%
vendored.com.google.common.util.concurrent.SmoothRateLimiter$SmoothBursty 70% 90% 50%
vendored.com.google.common.util.concurrent.RateLimiter$SleepingStopwatch$1 100% 100% 100%
vendored.com.google.common.util.concurrent.RateLimiter$SleepingStopwatch 100% 100% 0%
vendored.com.google.common.util.concurrent.RateLimiter 48% 60% 37%
vendored.com.google.common.util.concurrent.SmoothRateLimiter 75% 89% 62%
com.aws.greengrass.componentmanager.models.ComponentIdentifier 75% 75% 0%
com.aws.greengrass.componentmanager.models.ComponentMetadata 0% 0% 0%
com.aws.greengrass.componentmanager.models.PermissionType 58% 66% 50%
com.aws.greengrass.componentmanager.models.Permission 79% 100% 59%
com.aws.greengrass.util.platforms.StubResourceController 14% 14% 0%
com.aws.greengrass.util.platforms.Platform$1 100% 100% 0%
com.aws.greengrass.util.platforms.Platform 81% 91% 72%
com.aws.greengrass.util.platforms.Platform$FileSystemPermissionView 100% 100% 0%
com.aws.greengrass.dependency.State 61% 84% 38%
com.aws.greengrass.dependency.Context$Value 79% 85% 72%
com.aws.greengrass.dependency.EZPlugins 42% 54% 31%
com.aws.greengrass.dependency.Context$1 83% 83% 0%
com.aws.greengrass.dependency.Context 75% 83% 67%
com.aws.greengrass.dependency.InjectionActions 100% 100% 0%
com.aws.greengrass.mqttclient.spool.SpoolerStorageType 100% 100% 0%
com.aws.greengrass.mqttclient.spool.Spool 35% 51% 19%
com.aws.greengrass.mqttclient.spool.InMemorySpool 57% 57% 0%
com.aws.greengrass.componentmanager.KernelConfigResolver 82% 88% 75%
com.aws.greengrass.componentmanager.Unarchiver 72% 85% 58%
com.aws.greengrass.componentmanager.ComponentManager 65% 63% 68%
com.aws.greengrass.componentmanager.ClientConfigurationUtils 54% 58% 50%
com.aws.greengrass.componentmanager.ComponentStore 52% 54% 50%
com.aws.greengrass.componentmanager.ComponentServiceHelper 47% 79% 16%
com.aws.greengrass.componentmanager.DependencyResolver 61% 69% 53%
com.aws.greengrass.util.platforms.unix.UnixRunWithGenerator 63% 61% 65%
com.aws.greengrass.util.platforms.unix.UnixGroupAttributes 100% 100% 0%
com.aws.greengrass.util.platforms.unix.QNXPlatform 0% 0% 0%
com.aws.greengrass.util.platforms.unix.UnixPlatform$ShDecorator 75% 100% 50%
com.aws.greengrass.util.platforms.unix.UnixUserAttributes 75% 100% 50%
com.aws.greengrass.util.platforms.unix.UnixPlatform$SudoDecorator 76% 90% 62%
com.aws.greengrass.util.platforms.unix.UnixPlatform$PosixFileSystemPermissionView 87% 91% 83%
com.aws.greengrass.util.platforms.unix.DarwinPlatform 0% 0% 0%
com.aws.greengrass.util.platforms.unix.UnixPlatform$IdOption 100% 100% 0%
com.aws.greengrass.util.platforms.unix.UnixPlatform 65% 65% 66%
com.aws.greengrass.config.Topic 73% 78% 67%
com.aws.greengrass.config.UpdateBehaviorTree$PrunedUpdateBehaviorTree 80% 80% 0%
com.aws.greengrass.config.CaseInsensitiveString 70% 70% 70%
com.aws.greengrass.config.Node 78% 80% 77%
com.aws.greengrass.config.Topics 81% 83% 79%
com.aws.greengrass.config.ConfigurationWriter 75% 72% 77%
com.aws.greengrass.config.WhatHappened 100% 100% 0%
com.aws.greengrass.config.PlatformResolver 36% 45% 26%
com.aws.greengrass.config.ConfigurationReader$1 100% 100% 0%
com.aws.greengrass.config.Configuration 65% 80% 50%
com.aws.greengrass.config.ConfigurationReader 58% 74% 42%
com.aws.greengrass.config.UpdateBehaviorTree 100% 100% 100%
com.aws.greengrass.config.UpdateBehaviorTree$UpdateBehavior 100% 100% 0%
com.aws.greengrass.iot.IotConnectionManager 0% 0% 0%
com.aws.greengrass.iot.IotCloudHelper 0% 0% 0%
com.aws.greengrass.iot.model.IotCloudResponse 0% 0% 0%
com.aws.greengrass.deployment.bootstrap.BootstrapTaskStatus 100% 100% 0%
com.aws.greengrass.deployment.bootstrap.BootstrapManager 61% 66% 56%
com.aws.greengrass.deployment.bootstrap.BootstrapManager$1 0% 0% 0%
com.aws.greengrass.deployment.bootstrap.BootstrapSuccessCode 0% 0% 0%
com.aws.greengrass.deployment.bootstrap.BootstrapTaskStatus$ExecutionStatus 100% 100% 0%
com.aws.greengrass.status.FleetStatusDetails 100% 100% 0%
com.aws.greengrass.status.FleetStatusService$1 16% 16% 0%
com.aws.greengrass.status.FleetStatusService 79% 89% 70%
com.aws.greengrass.status.OverallStatus 100% 100% 0%
com.aws.greengrass.deployment.model.FailureHandlingPolicy 100% 100% 0%
com.aws.greengrass.deployment.model.DeploymentTaskMetadata 40% 40% 0%
com.aws.greengrass.deployment.model.RunWith 70% 91% 50%
com.aws.greengrass.deployment.model.DeploymentPackageConfiguration 21% 21% 0%
com.aws.greengrass.deployment.model.DeploymentDocument 87% 100% 75%
com.aws.greengrass.deployment.model.DeploymentDocument$SDKSerializer 100% 100% 0%
com.aws.greengrass.deployment.model.Deployment$DeploymentType 100% 100% 0%
com.aws.greengrass.deployment.model.Deployment 66% 66% 0%
com.aws.greengrass.deployment.model.Deployment$DeploymentStage 100% 100% 0%
com.aws.greengrass.deployment.model.DeploymentDocument$SDKDeserializer 20% 20% 0%
com.aws.greengrass.deployment.model.DeploymentResult$DeploymentStatus 100% 100% 0%
com.aws.greengrass.mqttclient.AwsIotMqttClient$1 41% 50% 33%
com.aws.greengrass.mqttclient.CallbackEventManager 40% 56% 25%
com.aws.greengrass.mqttclient.MqttTopic 83% 88% 78%
com.aws.greengrass.mqttclient.MqttClient$1 12% 12% 0%
com.aws.greengrass.mqttclient.PublishRequest 68% 87% 50%
com.aws.greengrass.mqttclient.MqttClient 41% 51% 32%
com.aws.greengrass.mqttclient.WrapperMqttClientConnection 92% 85% 100%
com.aws.greengrass.mqttclient.AwsIotMqttClient 44% 51% 36%
com.aws.greengrass.network.HttpClientProvider 50% 50% 0%
com.aws.greengrass.tes.TokenExchangeService 0% 0% 0%
com.aws.greengrass.tes.CredentialRequestHandler 0% 0% 0%
com.aws.greengrass.tes.CredentialRequestHandler$TESCache 0% 0% 0%
com.aws.greengrass.tes.HttpServerImpl 0% 0% 0%
com.aws.greengrass.tes.LazyCredentialProvider 27% 27% 0%
com.aws.greengrass.componentmanager.converter.RecipeLoader 70% 81% 59%
com.aws.greengrass.componentmanager.converter.RecipeLoader$RecipeFormat 100% 100% 0%
com.aws.greengrass.lifecyclemanager.GreengrassService$RunStatus 100% 100% 0%
com.aws.greengrass.lifecyclemanager.Periodicity 54% 62% 47%
com.aws.greengrass.lifecyclemanager.LogManagerHelper 100% 100% 0%
com.aws.greengrass.lifecyclemanager.Lifecycle 83% 84% 82%
com.aws.greengrass.lifecyclemanager.UnloadableService 25% 25% 0%
com.aws.greengrass.lifecyclemanager.RunWithPathOwnershipHandler 89% 96% 83%
com.aws.greengrass.lifecyclemanager.Kernel 67% 69% 65%
com.aws.greengrass.lifecyclemanager.KernelMetricsEmitter 100% 100% 100%
com.aws.greengrass.lifecyclemanager.KernelAlternatives 27% 32% 21%
com.aws.greengrass.lifecyclemanager.KernelCommandLine 63% 67% 58%
com.aws.greengrass.lifecyclemanager.ShellRunner$Default 75% 76% 75%
com.aws.greengrass.lifecyclemanager.GreengrassService 87% 89% 86%
com.aws.greengrass.lifecyclemanager.KernelLifecycle 67% 71% 62%
com.aws.greengrass.lifecyclemanager.PluginService 67% 68% 66%
com.aws.greengrass.lifecyclemanager.UpdateSystemPolicyService 82% 83% 80%
com.aws.greengrass.lifecyclemanager.GenericExternalService 70% 76% 63%
com.aws.greengrass.util.platforms.unix.linux.LinuxSystemResourceController 74% 81% 68%
com.aws.greengrass.util.platforms.unix.linux.Cgroup 90% 90% 0%
com.aws.greengrass.util.platforms.unix.linux.LinuxSystemResourceController$CgroupFreezerState 100% 100% 0%
com.aws.greengrass.util.platforms.unix.linux.LinuxPlatform 100% 100% 0%
com.aws.greengrass.deployment.converter.DeploymentDocumentConverter 68% 79% 58%
com.aws.greengrass.ipc.IPCEventStreamService 64% 78% 50%
com.aws.greengrass.ipc.AuthenticationHandler 30% 35% 25%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$UpdateConfigurationOperationHandler 68% 73% 63%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$ConfigurationUpdateOperationHandler 77% 90% 63%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$GetConfigurationOperationHandler 67% 78% 57%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$SendConfigurationValidityReportOperationHandler 78% 90% 66%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent 78% 81% 75%
com.aws.greengrass.builtin.services.configstore.ConfigStoreIPCEventStreamAgent$ValidateConfigurationUpdatesOperationHandler 95% 95% 0%
com.aws.greengrass.ipc.common.DefaultOperationHandler 0% 0% 0%
com.aws.greengrass.provisioning.ProvisioningConfigUpdateHelper 75% 100% 50%
com.aws.greengrass.provisioning.ProvisioningPluginFactory 100% 100% 0%
com.aws.greengrass.componentmanager.builtins.GreengrassRepositoryDownloader 0% 0% 0%
com.aws.greengrass.componentmanager.builtins.S3Downloader 18% 25% 12%
com.aws.greengrass.componentmanager.builtins.ArtifactDownloaderFactory 53% 63% 42%
com.aws.greengrass.componentmanager.builtins.ArtifactDownloader 17% 22% 12%
vendored.com.google.common.base.Stopwatch 43% 37% 50%
vendored.com.google.common.base.Ticker$1 100% 100% 0%
vendored.com.google.common.base.Ticker 100% 100% 0%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$UpdateStateOperationHandler 60% 60% 0%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$DeferComponentUpdateHandler 64% 78% 50%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent 92% 85% 100%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$SubscribeToComponentUpdateOperationHandler 58% 66% 50%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$PauseComponentHandler 57% 64% 50%
com.aws.greengrass.builtin.services.lifecycle.LifecycleIPCEventStreamAgent$ResumeComponentHandler 56% 63% 50%
com.aws.greengrass.builtin.services.pubsub.PubSubIPCEventStreamAgent$PublishToTopicOperationHandler 70% 90% 50%
com.aws.greengrass.builtin.services.pubsub.PubSubIPCEventStreamAgent 51% 63% 40%
com.aws.greengrass.builtin.services.pubsub.PubSubIPCEventStreamAgent$SubscribeToTopicOperationHandler 84% 94% 75%
com.aws.greengrass.telemetry.TelemetryAgent 57% 70% 45%
com.aws.greengrass.telemetry.TelemetryConfiguration 30% 51% 10%
com.aws.greengrass.telemetry.MetricsPayload 100% 100% 0%
com.aws.greengrass.telemetry.MetricsAggregator 28% 37% 20%
com.aws.greengrass.telemetry.PeriodicMetricsEmitter 100% 100% 0%
com.aws.greengrass.telemetry.TelemetryAgent$1 20% 20% 0%
com.aws.greengrass.telemetry.AggregatedMetric 0% 0% 0%
com.aws.greengrass.telemetry.SystemMetricsEmitter 100% 100% 0%
com.aws.greengrass.deployment.DeploymentConfigMerger 76% 77% 75%
com.aws.greengrass.deployment.DefaultDeploymentTask 81% 88% 75%
com.aws.greengrass.deployment.DeploymentDirectoryManager 63% 76% 50%
com.aws.greengrass.deployment.IotJobsHelper$IotJobsClientFactory 100% 100% 0%
com.aws.greengrass.deployment.IotJobsHelper$WrapperMqttConnectionFactory 100% 100% 0%
com.aws.greengrass.deployment.DeploymentConfigMerger$AggregateServicesChangeManager 77% 76% 78%
com.aws.greengrass.deployment.IotJobsHelper 49% 53% 45%
com.aws.greengrass.deployment.DeviceConfiguration$1 0% 0% 0%
com.aws.greengrass.deployment.DeviceConfiguration 59% 63% 54%
com.aws.greengrass.deployment.IotJobsHelper$1 14% 14% 0%
com.aws.greengrass.deployment.DeploymentDocumentDownloader 11% 11% 0%
com.aws.greengrass.deployment.DeploymentQueue 89% 92% 87%
com.aws.greengrass.deployment.ThingGroupHelper 30% 35% 25%
com.aws.greengrass.deployment.DeploymentService 57% 62% 52%
com.aws.greengrass.deployment.ShadowDeploymentListener 37% 36% 39%
com.aws.greengrass.deployment.ShadowDeploymentListener$1 14% 14% 0%
com.aws.greengrass.deployment.DeploymentStatusKeeper 81% 91% 71%
com.aws.greengrass.deployment.IotJobsClientWrapper 25% 32% 19%
com.aws.greengrass.deployment.IotJobsHelper$LatestQueuedJobs 18% 18% 0%
com.aws.greengrass.deployment.KernelUpdateDeploymentTask 0% 0% 0%
com.aws.greengrass.deployment.DynamicComponentConfigurationValidator 85% 82% 87%
com.aws.greengrass.testing.TestFeatureParameters 83% 100% 66%
com.aws.greengrass.testing.TestFeatureParameters$1 100% 100% 0%
com.aws.greengrass.util.orchestration.InitUtils 0% 0% 0%
com.aws.greengrass.util.orchestration.SystemServiceUtilsFactory 0% 0% 0%
com.aws.greengrass.util.orchestration.SystemdUtils 0% 0% 0%
com.aws.greengrass.ipc.modules.PubSubIPCService 81% 81% 0%
com.aws.greengrass.ipc.modules.MqttProxyIPCService 78% 78% 0%
com.aws.greengrass.ipc.modules.AuthorizationService 100% 100% 0%
com.aws.greengrass.ipc.modules.LifecycleIPCService 86% 86% 0%
com.aws.greengrass.ipc.modules.ConfigStoreIPCService 100% 100% 0%
com.aws.greengrass.easysetup.GreengrassSetup 0% 0% 0%
com.aws.greengrass.easysetup.DeviceProvisioningHelper 0% 0% 0%

Minimum allowed coverage is 58%

Generated by 🐒 cobertura-action against 2502e35

@MikeDombo MikeDombo merged commit c484f7d into main Aug 5, 2021
@MikeDombo MikeDombo deleted the tilo-chen-patch-1 branch August 5, 2021 20:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants