Think I got them all

This commit is contained in:
Marc Mercer
2024-10-28 13:20:36 -07:00
parent 1add9dd965
commit 335a87d856
14 changed files with 21 additions and 21 deletions
@@ -9,7 +9,7 @@ export async function up(knex: Knex): Promise<void> {
t.uuid("id", { primaryKey: true }).defaultTo(knex.fn.uuid()); t.uuid("id", { primaryKey: true }).defaultTo(knex.fn.uuid());
t.string("integration").notNullable(); t.string("integration").notNullable();
t.string("teamId"); // vercel-specific t.string("teamId"); // vercel-specific
t.string("url"); // for self hosted t.string("url"); // for self-hosted
t.string("namespace"); // hashicorp specific t.string("namespace"); // hashicorp specific
t.string("accountId"); // netlify t.string("accountId"); // netlify
t.text("refreshCiphertext"); t.text("refreshCiphertext");
@@ -36,7 +36,7 @@ export async function up(knex: Knex): Promise<void> {
await knex.schema.createTable(TableName.Integration, (t) => { await knex.schema.createTable(TableName.Integration, (t) => {
t.uuid("id", { primaryKey: true }).defaultTo(knex.fn.uuid()); t.uuid("id", { primaryKey: true }).defaultTo(knex.fn.uuid());
t.boolean("isActive").notNullable(); t.boolean("isActive").notNullable();
t.string("url"); // self hosted t.string("url"); // self-hosted
t.string("app"); // name of app in provider t.string("app"); // name of app in provider
t.string("appId"); t.string("appId");
t.string("targetEnvironment"); t.string("targetEnvironment");
@@ -129,7 +129,7 @@ export const licenseServiceFactory = ({
} }
} }
// this means this is self hosted oss version // this means this is the self-hosted oss version
// else it would reach catch statement // else it would reach catch statement
isValidLicense = true; isValidLicense = true;
} catch (error) { } catch (error) {
@@ -48,7 +48,7 @@ export const telemetryQueueServiceFactory = ({
await keyStore.deleteItem(TELEMETRY_SECRET_OPERATIONS_KEY); await keyStore.deleteItem(TELEMETRY_SECRET_OPERATIONS_KEY);
}); });
// every day at midnight a telemetry job executes on self hosted // every day at midnight a telemetry job executes on self-hosted instances
// this sends some telemetry information like instance id secrets operated etc // this sends some telemetry information like instance id secrets operated etc
const startTelemetryCheck = async () => { const startTelemetryCheck = async () => {
// this is a fast way to check its cloud or not // this is a fast way to check its cloud or not
@@ -62,7 +62,7 @@ To opt into telemetry, you can set "TELEMETRY_ENABLED=true" within the environme
const sendPostHogEvents = async (event: TPostHogEvent) => { const sendPostHogEvents = async (event: TPostHogEvent) => {
if (postHog) { if (postHog) {
const instanceType = licenseService.getInstanceType(); const instanceType = licenseService.getInstanceType();
// capture posthog only when its cloud or signup event happens in self hosted // capture posthog only when its cloud or signup event happens in self-hosted
if (instanceType === InstanceType.Cloud || event.event === PostHogEventTypes.UserSignedUp) { if (instanceType === InstanceType.Cloud || event.event === PostHogEventTypes.UserSignedUp) {
postHog.capture({ postHog.capture({
event: event.event, event: event.event,
@@ -13,7 +13,7 @@ export enum PostHogEventTypes {
IntegrationCreated = "Integration Created", IntegrationCreated = "Integration Created",
MachineIdentityCreated = "Machine Identity Created", MachineIdentityCreated = "Machine Identity Created",
UserOrgInvitation = "User Org Invitation", UserOrgInvitation = "User Org Invitation",
TelemetryInstanceStats = "Self Hosted Instance Stats" TelemetryInstanceStats = "Self-Hosted Instance Stats"
} }
export type TSecretModifiedEvent = { export type TSecretModifiedEvent = {
+1 -1
View File
@@ -429,7 +429,7 @@ func CallGetRawSecretsV3(httpClient *resty.Client, request GetRawSecretsV3Reques
(strings.Contains(response.String(), "bot_not_found_error") || (strings.Contains(response.String(), "bot_not_found_error") ||
strings.Contains(strings.ToLower(response.String()), "failed to find bot key") || strings.Contains(strings.ToLower(response.String()), "failed to find bot key") ||
strings.Contains(strings.ToLower(response.String()), "bot is not active")) { strings.Contains(strings.ToLower(response.String()), "bot is not active")) {
return GetRawSecretsV3Response{}, fmt.Errorf(`Project with id %s is incompatible with your current CLI version. Upgrade your project by visiting the project settings page. If you're self hosting and project upgrade option isn't yet available, contact your administrator to upgrade your Infisical instance to the latest release. return GetRawSecretsV3Response{}, fmt.Errorf(`Project with id %s is incompatible with your current CLI version. Upgrade your project by visiting the project settings page. If you're self-hosting and project upgrade option isn't yet available, contact your administrator to upgrade your Infisical instance to the latest release.
`, request.WorkspaceId) `, request.WorkspaceId)
} }
+4 -4
View File
@@ -236,7 +236,7 @@ var loginCmd = &cobra.Command{
} }
//prompt user to select domain between Infisical cloud and self hosting //prompt user to select domain between Infisical cloud and self-hosting
if domainQuery { if domainQuery {
err = askForDomain() err = askForDomain()
if err != nil { if err != nil {
@@ -528,11 +528,11 @@ func DomainOverridePrompt() (bool, error) {
func askForDomain() error { func askForDomain() error {
// query user to choose between Infisical cloud or self hosting // query user to choose between Infisical cloud or self-hosting
const ( const (
INFISICAL_CLOUD_US = "Infisical Cloud (US Region)" INFISICAL_CLOUD_US = "Infisical Cloud (US Region)"
INFISICAL_CLOUD_EU = "Infisical Cloud (EU Region)" INFISICAL_CLOUD_EU = "Infisical Cloud (EU Region)"
SELF_HOSTING = "Self Hosting" SELF_HOSTING = "Self-Hosting"
ADD_NEW_DOMAIN = "Add a new domain" ADD_NEW_DOMAIN = "Add a new domain"
) )
@@ -609,7 +609,7 @@ func askForDomain() error {
return err return err
} }
// Trimmed the '/' from the end of the self hosting url, and set the api & login url // Trimmed the '/' from the end of the self-hosting url, and set the api & login url
domain = strings.TrimRight(domain, "/") domain = strings.TrimRight(domain, "/")
config.INFISICAL_URL = fmt.Sprintf("%s/api", domain) config.INFISICAL_URL = fmt.Sprintf("%s/api", domain)
config.INFISICAL_LOGIN_URL = fmt.Sprintf("%s/login", domain) config.INFISICAL_LOGIN_URL = fmt.Sprintf("%s/login", domain)
+2 -2
View File
@@ -167,7 +167,7 @@ For security and privacy concerns, we recommend you to configure your terminal t
#### Method 2: Export environment variable #### Method 2: Export environment variable
You can point the CLI to the self hosted Infisical instance by exporting the environment variable `INFISICAL_API_URL` in your terminal. You can point the CLI to the self-hosted Infisical instance by exporting the environment variable `INFISICAL_API_URL` in your terminal.
<Tabs> <Tabs>
<Tab title="Linux/MacOs"> <Tab title="Linux/MacOs">
@@ -197,7 +197,7 @@ For security and privacy concerns, we recommend you to configure your terminal t
#### Method 3: Set manually on every command #### Method 3: Set manually on every command
Another option to point the CLI to your self hosted Infisical instance is to set it via a flag on every command you run. Another option to point the CLI to your self-hosted Infisical instance is to set it via a flag on every command you run.
```bash ```bash
# Example # Example
+1 -1
View File
@@ -33,7 +33,7 @@ Set up the Infisical provider by specifying the `host` and `service_token`. Repl
```hcl main.tf ```hcl main.tf
provider "infisical" { provider "infisical" {
host = "https://app.infisical.com" # Only required if using self hosted instance of Infisical, default is https://app.infisical.com host = "https://app.infisical.com" # Only required if using self-hosted instance of Infisical, default is https://app.infisical.com
client_id = "<>" client_id = "<>"
client_secret = "<>" client_secret = "<>"
service_token = "<>" # DEPRECATED, USE MACHINE IDENTITY AUTH INSTEAD service_token = "<>" # DEPRECATED, USE MACHINE IDENTITY AUTH INSTEAD
+1 -1
View File
@@ -169,7 +169,7 @@ spec:
### InfisicalSecret CRD properties ### InfisicalSecret CRD properties
<Accordion title="hostAPI"> <Accordion title="hostAPI">
If you are fetching secrets from a self hosted instance of Infisical set the value of `hostAPI` to If you are fetching secrets from a self-hosted instance of Infisical set the value of `hostAPI` to
` https://your-self-hosted-instace.com/api` ` https://your-self-hosted-instace.com/api`
When `hostAPI` is not defined the operator fetches secrets from Infisical Cloud. When `hostAPI` is not defined the operator fetches secrets from Infisical Cloud.
@@ -2,7 +2,7 @@
title: "Docker Compose" title: "Docker Compose"
description: "Read how to run Infisical with Docker Compose template." description: "Read how to run Infisical with Docker Compose template."
--- ---
This self hosting guide will walk you though the steps to self host Infisical using Docker compose. This self-hosting guide will walk you through the steps to self-host Infisical using Docker Compose.
## Prerequisites ## Prerequisites
- [Docker](https://docs.docker.com/engine/install/) - [Docker](https://docs.docker.com/engine/install/)
@@ -79,4 +79,4 @@ docker-compose -f docker-compose.prod.yml up
Your Infisical instance should now be running on port `80`. To access your instance, visit `http://localhost:80`. Your Infisical instance should now be running on port `80`. To access your instance, visit `http://localhost:80`.
![self host sign up](/images/self-hosting/applicable-to-all/selfhost-signup.png) ![self-hosted sign up](/images/self-hosting/applicable-to-all/selfhost-signup.png)
@@ -53,7 +53,7 @@ The following guide provides a detailed step-by-step walkthrough on how you can
Once the container is running, verify the installation by opening your web browser and navigating to `http://localhost:80`. Once the container is running, verify the installation by opening your web browser and navigating to `http://localhost:80`.
![self host sign up](/images/self-hosting/applicable-to-all/selfhost-signup.png) ![self-hosted sign up](/images/self-hosting/applicable-to-all/selfhost-signup.png)
</Step> </Step>
</Steps> </Steps>
+1 -1
View File
@@ -5,7 +5,7 @@ description: "Find out how to activate Infisical Enterprise edition (EE) feature
While most features in Infisical are free to use, others are paid and require purchasing an enterprise license to use them. While most features in Infisical are free to use, others are paid and require purchasing an enterprise license to use them.
This guide walks through how you can use these paid features on a self hosted instance of Infisical. This guide walks through how you can use these paid features on a self-hosted instance of Infisical.
<Steps> <Steps>
<Step title="Purchase a license"> <Step title="Purchase a license">
+2 -2
View File
@@ -3,11 +3,11 @@ title: "FAQ"
description: "Frequently Asked Questions about self-hosting Infisical." description: "Frequently Asked Questions about self-hosting Infisical."
--- ---
Frequently asked questions about self hosted instance of Infisical can be found on this page. Frequently asked questions about self-hosted instance of Infisical can be found on this page.
If you can't find the answer you are looking for, please create an issue on our [GitHub repository](https://github.com/Infisical/infisical) or join our [Slack community](https://infisical.com/slack) for additional support. If you can't find the answer you are looking for, please create an issue on our [GitHub repository](https://github.com/Infisical/infisical) or join our [Slack community](https://infisical.com/slack) for additional support.
<Accordion title="When I refresh any page, it logs me out" defaultOpen="true"> <Accordion title="When I refresh any page, it logs me out" defaultOpen="true">
This issue is typically seen when you haven't set up SSL for your self hosted instance of Infisical. When SSL is not enabled, you can't receive secure cookies, preventing the session data to not be saved. This issue is typically seen when you haven't set up SSL for your self-hosted instance of Infisical. When SSL is not enabled, you can't receive secure cookies, preventing the session data to not be saved.
To fix this, we highly recommend that you set up SSL for your instance. To fix this, we highly recommend that you set up SSL for your instance.
However, in the event you choose to use Infisical without SSL, you can do so by setting the `HTTPS_ENABLED` environment variable to `"false"` for the backend application. However, in the event you choose to use Infisical without SSL, you can do so by setting the `HTTPS_ENABLED` environment variable to `"false"` for the backend application.