public PublishFunctionApp(IArmManager armManager, ISettings settings, ISecretsManager secretsManager, IArmTokenManager tokenManager)
     : base(armManager)
 {
     _settings       = settings;
     _secretsManager = secretsManager;
     _tokenManager   = tokenManager;
 }
 public static void Init(ISecretsManager secretsManager, string[] args)
 {
     try
     {
         if (args.Contains("--csharp") || args.Contains("--dotnet"))
         {
             _currentWorkerRuntime = WorkerRuntime.dotnet;
         }
         else if (args.Contains("--javascript") || args.Contains("--typescript") || args.Contains("--node"))
         {
             _currentWorkerRuntime = WorkerRuntime.node;
         }
         else if (args.Contains("--java"))
         {
             _currentWorkerRuntime = WorkerRuntime.java;
         }
         else if (args.Contains("--python"))
         {
             _currentWorkerRuntime = WorkerRuntime.python;
         }
         else if (args.Contains("--powershell"))
         {
             _currentWorkerRuntime = WorkerRuntime.powershell;
         }
         else
         {
             _currentWorkerRuntime = WorkerRuntimeLanguageHelper.GetCurrentWorkerRuntimeLanguage(secretsManager);
         }
     }
     catch
     {
         _currentWorkerRuntime = WorkerRuntime.None;
     }
 }
 public CreateFunctionAction(ITemplatesManager templatesManager, ISecretsManager secretsManager)
 {
     _templatesManager = templatesManager;
     _secretsManager   = secretsManager;
     _templates        = new Lazy <IEnumerable <Template> >(() => { return(_templatesManager.Templates.Result); });
     _initAction       = new InitAction(_templatesManager, _secretsManager);
 }
Пример #4
0
 public AwsSesEmailSender(
     ISecretsManager secretsManager,
     ISystemParameterListRepository systemParameterListRepository)
 {
     this.secretsManager = secretsManager;
     this.systemParameterListRepository = systemParameterListRepository;
 }
Пример #5
0
 public SettingService(DataContext dbContext,
                       IJsonConfigurationManager configurationManager,
                       ISecretsManager secretsManager, IConfiguration configuration) : base(dbContext)
 {
     _configurationManager = configurationManager;
     _secretsManager       = secretsManager;
     _configurationRoot    = configuration as IConfigurationRoot;
 }
Пример #6
0
 public SettingService(DataContext dbContext,
                       IStringLocalizer <ResultCode> resultLocalizer,
                       IBusinessContextProvider contextProvider,
                       IJsonConfigurationManager configurationManager,
                       ISecretsManager secretsManager,
                       IConfiguration configuration) : base(dbContext, resultLocalizer, contextProvider)
 {
     _configurationManager = configurationManager;
     _secretsManager       = secretsManager;
     _configurationRoot    = configuration as IConfigurationRoot;
 }
        internal static WorkerRuntime SetWorkerRuntime(ISecretsManager secretsManager, string language)
        {
            var worker = NormalizeWorkerRuntime(language);

            secretsManager.SetSecret(Constants.FunctionsWorkerRuntime, worker.ToString());
            ColoredConsole
            .WriteLine(WarningColor("Starting from 2.0.1-beta.26 it's required to set a language for your project in your settings"))
            .WriteLine(WarningColor($"'{worker}' has been set in your local.settings.json"));

            return(worker);
        }
        public static WorkerRuntime GetCurrentWorkerRuntimeLanguage(ISecretsManager secretsManager)
        {
            var setting = secretsManager.GetSecrets().FirstOrDefault(s => s.Key.Equals(Constants.FunctionsWorkerRuntime, StringComparison.OrdinalIgnoreCase)).Value;

            try
            {
                return(NormalizeWorkerRuntime(setting));
            }
            catch
            {
                return(WorkerRuntime.None);
            }
        }
        public UsersDataManagerTs(
            ILogsManager logsManager,
            IUsersDataManagerTsHelpers usersDataManagerTsHelpers,
            ISecretsManager secretsManager,
            IDbFactory dbFactory,
            IDataManagersHelpersTs dataManagersHelpers)
        {
            _logsManager = logsManager;

            _usersDataManagerTsHelpers = usersDataManagerTsHelpers;

            _secretsManager = secretsManager;

            _dbFactory = dbFactory;

            _dataManagersHelpers = dataManagersHelpers;
        }
        public static async Task <string> EnsureExtensionsProjectExistsAsync(ISecretsManager secretsManager, bool csx, string extensionsDir = null)
        {
            if (GlobalCoreToolsSettings.CurrentWorkerRuntime == WorkerRuntime.dotnet && !csx)
            {
                return(DotnetHelpers.GetCsprojOrFsproj());
            }

            if (String.IsNullOrEmpty(extensionsDir))
            {
                extensionsDir = Environment.CurrentDirectory;
            }

            var extensionsProj = Path.Combine(extensionsDir, Constants.ExtenstionsCsProjFile);

            if (!FileSystemHelpers.FileExists(extensionsProj))
            {
                FileSystemHelpers.EnsureDirectory(extensionsDir);
                await FileSystemHelpers.WriteAllTextToFileAsync(extensionsProj, await StaticResources.ExtensionsProject);
            }
            return(extensionsProj);
        }
Пример #11
0
        public static async Task <string> EnsureExtensionsProjectExistsAsync(ISecretsManager secretsManager, bool csx, string extensionsDir = null)
        {
            var workerRuntime = WorkerRuntimeLanguageHelper.GetCurrentWorkerRuntimeLanguage(secretsManager);

            if (workerRuntime == WorkerRuntime.dotnet && !csx)
            {
                return(DotnetHelpers.GetCsproj());
            }

            if (String.IsNullOrEmpty(extensionsDir))
            {
                extensionsDir = Environment.CurrentDirectory;
            }

            var extensionsProj = Path.Combine(extensionsDir, "extensions.csproj");

            if (!FileSystemHelpers.FileExists(extensionsProj))
            {
                FileSystemHelpers.EnsureDirectory(extensionsDir);
                await FileSystemHelpers.WriteAllTextToFileAsync(extensionsProj, await StaticResources.ExtensionsProject);
            }
            return(extensionsProj);
        }
Пример #12
0
 public InitAction(ITemplatesManager templatesManager, ISecretsManager secretsManager)
 {
     _templatesManager = templatesManager;
     _secretsManager   = secretsManager;
 }
 public ListSettingsAction(ISecretsManager secretsManager)
 {
     _secretsManager = secretsManager;
 }
Пример #14
0
 public CreateFunctionAction(ITemplatesManager templatesManager, ISecretsManager secretsManager)
 {
     _templatesManager = templatesManager;
     _secretsManager   = secretsManager;
 }
        public readonly static DateTime CreatedBeforeDefault = DateTime.MaxValue.AddDays(-1); // subtract one to avoid overflow/timezone error


        public DurableManager(ISecretsManager secretsManager)
        {
            _secretsManager = secretsManager;
            SetConnectionStringAndTaskHubName();
        }
Пример #16
0
 public PublishFunctionAppAction(ISettings settings, ISecretsManager secretsManager)
 {
     _settings       = settings;
     _secretsManager = secretsManager;
 }
Пример #17
0
        public static IServiceCollection AddDefaultSecretsManager(this IServiceCollection services,
                                                                  IHostEnvironment env, IConfiguration configuration,
                                                                  string cmdLineProgram, out ISecretsManager secretsManager)
        {
            secretsManager = new SecretsManager()
            {
                DefaultConfiguration = configuration,
                Env            = env,
                CmdLineProgram = cmdLineProgram
            };

            return(services.AddSingleton(secretsManager));
        }
 public TemplatesManager(ISecretsManager secretsManager)
 {
     _secretsManager = secretsManager;
 }
 public FunctionsLocalServer(IProcessManager processManager, ISettings settings, ISecretsManager secretesManager)
 {
     _settings       = settings;
     _processManager = processManager;
     _secretsManager = secretesManager;
 }
 public KubernetesDeployAction(ISecretsManager secretsManager)
 {
     _secretsManager = secretsManager;
 }
 public FetchAppSettingsAction(IArmManager armManager, ISecretsManager secretsManager)
 {
     _armManager     = armManager;
     _secretsManager = secretsManager;
 }
Пример #22
0
 public static IServiceCollection AddSecrectsManager(this IServiceCollection services, ISecretsManager secretsManager)
 {
     return(services.AddSingleton(secretsManager));
 }
 public InstallExtensionAction(ISecretsManager secretsManager, bool showNoActionWarning = true)
 {
     _secretsManager      = secretsManager;
     _showNoActionWarning = showNoActionWarning;
 }
Пример #24
0
 public InstallExtensionAction(ISecretsManager secretsManager)
 {
     _secretsManager = secretsManager;
 }
 public StartHostAction(ISecretsManager secretsManager)
 {
     this._secretsManager    = secretsManager;
     IConfigurationArguments = InitializeConfigurationArguments();
 }
Пример #26
0
        public static IServiceCollection AddAppDbContext(this IServiceCollection services, ISecretsManager secretsManager)
        {
            string connStr = secretsManager.Get(DataConsts.ConnStrKey);

            if (connStr is null)
            {
                throw new ArgumentNullException(nameof(connStr));
            }

            if (Settings.App.UseDbConnectionPool)
            {
                #region Event handlers
                void Pool_TryReturnToPoolError(Exception ex, int tryCount)
                {
                    Log.Error(ex, "Failed {TryCount} time(s) in retrying add DbConnection to pool", tryCount);
                }

                void Pool_WatcherThreadError(Exception ex, DbConnection dbConnection)
                {
                    Log.Error(ex, "Failure on watcher thread with DbConnection of '{ConnStr}'", dbConnection.ConnectionString);
                }

                void Pool_NewConnectionError(Exception ex, string poolKey)
                {
                    Log.Error(ex, "Failure on create connection '{PoolKey}'", poolKey);
                }

                void Pool_ReleaseConnectionError(Exception ex, DbConnection dbConnection)
                {
                    Log.Error(ex, "Failure on disposing DbConnection of '{ConnStr}'", dbConnection.ConnectionString);
                }

                #endregion

                IDbConnectionPoolManager connectionPoolManager;

                var poolKeyMap = new Dictionary <string, string>();

                services.AddSqlConnectionPoolManager(out connectionPoolManager, configAction: options =>
                {
                    options.WatchIntervalInMinutes = SqlConnectionPoolManagerOptions.DefaultWatchIntervalInMinutes;
                }, initAction: async pool =>
                {
                    pool.TryReturnToPoolError   += Pool_TryReturnToPoolError;
                    pool.NewConnectionError     += Pool_NewConnectionError;
                    pool.WatcherThreadError     += Pool_WatcherThreadError;
                    pool.ReleaseConnectionError += Pool_ReleaseConnectionError;

                    var poolSize = SqlConnectionHelper.ReadPoolSize(connStr);

                    var poolKey = await pool.InitDbConnectionAsync(new ConnectionPoolOptions
                    {
                        ConnectionString        = connStr,
                        LifetimeInMinutes       = ConnectionPoolOptions.DefaultLifetimeInMinutes,
                        MaximumRetryWhenFailure = ConnectionPoolOptions.DefaultMaximumRetryWhenFailure,
                        RetryIntervalInSeconds  = ConnectionPoolOptions.DefaultRetryIntervalInSeconds,
                        MaxPoolSize             = poolSize.maxPoolSize,
                        MinPoolSize             = poolSize.minPoolSize
                    });

                    poolKeyMap[DataConsts.ConnStrKey] = poolKey;
                }).AddDbContext <DataContext>(async builder =>
                {
                    var pooledConn = await connectionPoolManager.GetDbConnectionAsync(poolKeyMap[DataConsts.ConnStrKey]);

                    builder.UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking);

                    if (pooledConn != null)
                    {
                        builder.UseSqlServer(pooledConn);
                    }
                    else
                    {
                        builder.UseSqlServer(connStr);
                    }
                });
            }
            else
            {
                services.AddNullConnectionPoolManager()
                .AddDbContext <DataContext>(options => options
                                            .UseSqlServer(connStr)
                                            .UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking));
            }

            return(services);
        }
Пример #27
0
 public FetchAppSettingsAction(ISecretsManager secretsManager)
 {
     _secretsManager = secretsManager;
 }
 public PackAction(ISecretsManager secretsManager)
 {
     _secretsManager = secretsManager;
 }
Пример #29
0
 public StartHostAction(ISecretsManager secretsManager)
 {
     this._secretsManager = secretsManager;
 }
 public SyncExtensionsAction(ISecretsManager secretsManager)
 {
     _secretsManager = secretsManager;
 }