Esempio n. 1
0
        public async Task <int> HandleCommand(int team, string?project)
        {
            var msBuild = ResolveProject(project);

            if (msBuild == null)
            {
                return(-1);
            }
            var builder = new ContainerBuilder();

            AutoFacUtilites.AddCommonServicesToContainer(builder, msBuild, team, false,
                                                         false);
            var container = builder.Build();

            using (var scope = container.BeginLifetimeScope())
            {
                // Manually resolve project
                await scope.Resolve <IOutputWriter>().WriteLineAsync("Killing robot code");

                var rioConn = scope.Resolve <IFileDeployerProvider>();
                await rioConn.RunCommandAsync(DeployProperties.KillOnlyCommand, ConnectionUser.LvUser);

                await scope.Resolve <IOutputWriter>().WriteLineAsync("Robot code is kill");
            }
            return(0);
        }
Esempio n. 2
0
        public async Task <int> HandleCommand(int team, string?project, string[]?ignore, string[]?arguments)
        {
            var msBuild = ResolveProject(project);

            if (msBuild == null)
            {
                return(-1);
            }
            var builder = new ContainerBuilder();

            AutoFacUtilites.AddCommonServicesToContainer(builder, msBuild, team, false,
                                                         false);
            var container = builder.Build();

            using (var scope = container.BeginLifetimeScope())
            {
                var         settingsProvider = scope.Resolve <IFrcSettingsProvider>();
                FrcSettings?currentSettings  = await settingsProvider.GetFrcSettingsAsync().ConfigureAwait(false);

                if (currentSettings == null)
                {
                    currentSettings = new FrcSettings(team, new List <string>(), new List <string>());
                }

                if (ignore != null)
                {
                    var setVals = ignore.Where(x => !currentSettings.DeployIgnoreFiles.Contains(x));
                    currentSettings.DeployIgnoreFiles.AddRange(setVals);
                }

                if (arguments != null)
                {
                    var setVals = arguments.Where(x => !currentSettings.CommandLineArguments.Contains(x));
                    currentSettings.CommandLineArguments.AddRange(setVals);
                }

                await settingsProvider.WriteFrcSettingsAsync(currentSettings).ConfigureAwait(false);
            }

            return(0);
            /* do something */
        }
Esempio n. 3
0
        public async Task <int> HandleCommand(int team, string?project)
        {
            var msBuild = ResolveProject(project);

            if (msBuild == null)
            {
                return(-1);
            }
            var builder = new ContainerBuilder();

            AutoFacUtilites.AddCommonServicesToContainer(builder, msBuild, team, false,
                                                         false);
            var container = builder.Build();

            using (var scope = container.BeginLifetimeScope())
            {
                var deployer = scope.Resolve <CodeDeployer>();
                await deployer.DeployCode();
            }
            return(0);
        }
Esempio n. 4
0
        public async Task <int> HandleCommand(int team, string?project, bool download, bool install, string?location)
        {
            var msBuild = ResolveProject(project);

            if (msBuild == null)
            {
                return(-1);
            }
            var builder = new ContainerBuilder();

            AutoFacUtilites.AddCommonServicesToContainer(builder, msBuild, team, false,
                                                         false);
            var container = builder.Build();

            using (var scope = container.BeginLifetimeScope())
            {
                var runtimeProvider = scope.Resolve <IRuntimeProvider>();
                if (download)
                {
                    await runtimeProvider.DownladRuntimeAsync();
                }

                if (install)
                {
                    if (location != null)
                    {
                        await runtimeProvider.InstallRuntimeAsync(location);
                    }
                    else
                    {
                        await runtimeProvider.InstallRuntimeAsync();
                    }
                }
            }

            return(0);
        }