Revert "fix: Always use IP address for webhooks"
This reverts commit 880865f1f2
.
This commit is contained in:
parent
45c904e876
commit
e93d97f2bc
@ -1,5 +1,3 @@
|
||||
import { dev } from '$app/env';
|
||||
|
||||
export const asyncSleep = (delay) => new Promise((resolve) => setTimeout(resolve, delay));
|
||||
export const dateOptions: DateTimeFormatOptions = {
|
||||
year: 'numeric',
|
||||
@ -23,18 +21,6 @@ export const staticDeployments = [
|
||||
];
|
||||
export const notNodeDeployments = ['php', 'docker', 'rust', 'python', 'deno', 'laravel'];
|
||||
|
||||
export async function getIP() {
|
||||
if (dev) {
|
||||
return 'localhost:3000';
|
||||
}
|
||||
const response = await fetch(`https://api.ipify.org?format=json`);
|
||||
if (response.ok) {
|
||||
const json = await response.json();
|
||||
return `http://${json.ip}`;
|
||||
}
|
||||
return window.location.origin;
|
||||
}
|
||||
|
||||
export function getDomain(domain) {
|
||||
return domain?.replace('https://', '').replace('http://', '');
|
||||
}
|
||||
|
@ -8,7 +8,6 @@
|
||||
import { onMount } from 'svelte';
|
||||
import { gitTokens } from '$lib/store';
|
||||
import { t } from '$lib/translations';
|
||||
import { getIP } from '$lib/components/common';
|
||||
|
||||
const { id } = $page.params;
|
||||
const from = $page.url.searchParams.get('from');
|
||||
@ -114,7 +113,6 @@
|
||||
}
|
||||
|
||||
onMount(async () => {
|
||||
const ip = await getIP();
|
||||
try {
|
||||
if (!$gitTokens.githubToken) {
|
||||
const { token } = await get(`/applications/${id}/configuration/githubToken.json`);
|
||||
@ -133,7 +131,7 @@
|
||||
const left = screen.width / 2 - 1020 / 2;
|
||||
const top = screen.height / 2 - 618 / 2;
|
||||
const newWindow = open(
|
||||
`${htmlUrl}/oauth/authorize?client_id=${application.gitSource.gitlabApp.appId}&redirect_uri=${ip}/webhooks/gitlab&response_type=code&scope=api+email+read_repository&state=${$page.params.id}`,
|
||||
`${htmlUrl}/oauth/authorize?client_id=${application.gitSource.gitlabApp.appId}&redirect_uri=${window.location.origin}/webhooks/gitlab&response_type=code&scope=api+email+read_repository&state=${$page.params.id}`,
|
||||
'GitLab',
|
||||
'resizable=1, scrollbars=1, fullscreen=0, height=618, width=1020,top=' +
|
||||
top +
|
||||
|
@ -10,7 +10,6 @@
|
||||
import { del, get, post, put } from '$lib/api';
|
||||
import { gitTokens } from '$lib/store';
|
||||
import { t } from '$lib/translations';
|
||||
import { getIP } from '$lib/components/common';
|
||||
|
||||
const { id } = $page.params;
|
||||
const from = $page.url.searchParams.get('from');
|
||||
@ -41,7 +40,7 @@
|
||||
};
|
||||
onMount(async () => {
|
||||
if (!$gitTokens.gitlabToken) {
|
||||
await getGitlabToken();
|
||||
getGitlabToken();
|
||||
} else {
|
||||
loading.base = true;
|
||||
try {
|
||||
@ -50,7 +49,7 @@
|
||||
});
|
||||
username = user.username;
|
||||
} catch (error) {
|
||||
return await getGitlabToken();
|
||||
return getGitlabToken();
|
||||
}
|
||||
try {
|
||||
groups = await get(`${apiUrl}/v4/groups?per_page=5000`, {
|
||||
@ -65,12 +64,11 @@
|
||||
}
|
||||
});
|
||||
|
||||
async function getGitlabToken() {
|
||||
const ip = await getIP();
|
||||
function getGitlabToken() {
|
||||
const left = screen.width / 2 - 1020 / 2;
|
||||
const top = screen.height / 2 - 618 / 2;
|
||||
const newWindow = open(
|
||||
`${htmlUrl}/oauth/authorize?client_id=${application.gitSource.gitlabApp.appId}&redirect_uri=${ip}/webhooks/gitlab&response_type=code&scope=api+email+read_repository&state=${$page.params.id}`,
|
||||
`${htmlUrl}/oauth/authorize?client_id=${application.gitSource.gitlabApp.appId}&redirect_uri=${window.location.origin}/webhooks/gitlab&response_type=code&scope=api+email+read_repository&state=${$page.params.id}`,
|
||||
'GitLab',
|
||||
'resizable=1, scrollbars=1, fullscreen=0, height=618, width=1020,top=' +
|
||||
top +
|
||||
@ -165,10 +163,9 @@
|
||||
}
|
||||
}
|
||||
async function setWebhook(url, webhookToken) {
|
||||
const ip = await getIP();
|
||||
const host = dev
|
||||
? 'https://webhook.site/0e5beb2c-4e9b-40e2-a89e-32295e570c21'
|
||||
: `${ip}/webhooks/gitlab/events`;
|
||||
: `${window.location.origin}/webhooks/gitlab/events`;
|
||||
try {
|
||||
await post(
|
||||
url,
|
||||
|
@ -37,7 +37,6 @@
|
||||
import { gitTokens } from '$lib/store';
|
||||
import { browser } from '$app/env';
|
||||
import { t } from '$lib/translations';
|
||||
import { getIP } from '$lib/components/common';
|
||||
|
||||
const { id } = $page.params;
|
||||
|
||||
@ -175,12 +174,11 @@
|
||||
error.message === '401 Unauthorized'
|
||||
) {
|
||||
if (application.gitSource.gitlabAppId) {
|
||||
const ip = await getIP();
|
||||
let htmlUrl = application.gitSource.htmlUrl;
|
||||
const left = screen.width / 2 - 1020 / 2;
|
||||
const top = screen.height / 2 - 618 / 2;
|
||||
const newWindow = open(
|
||||
`${htmlUrl}/oauth/authorize?client_id=${application.gitSource.gitlabApp.appId}&redirect_uri=${ip}/webhooks/gitlab&response_type=code&scope=api+email+read_repository&state=${$page.params.id}`,
|
||||
`${htmlUrl}/oauth/authorize?client_id=${application.gitSource.gitlabApp.appId}&redirect_uri=${window.location.origin}/webhooks/gitlab&response_type=code&scope=api+email+read_repository&state=${$page.params.id}`,
|
||||
'GitLab',
|
||||
'resizable=1, scrollbars=1, fullscreen=0, height=618, width=1020,top=' +
|
||||
top +
|
||||
|
@ -11,7 +11,6 @@
|
||||
import { toast } from '@zerodevx/svelte-toast';
|
||||
|
||||
import { t } from '$lib/translations';
|
||||
import { getIP } from '$lib/components/common';
|
||||
const { id } = $page.params;
|
||||
let url = browser ? (settings.fqdn ? settings.fqdn : window.location.origin) : '';
|
||||
|
||||
@ -27,8 +26,7 @@
|
||||
appSecret: null
|
||||
};
|
||||
}
|
||||
onMount(async () => {
|
||||
url = await getIP();
|
||||
onMount(() => {
|
||||
oauthIdEl && oauthIdEl.focus();
|
||||
});
|
||||
|
||||
|
@ -30,21 +30,21 @@
|
||||
|
||||
<script>
|
||||
import { dev } from '$app/env';
|
||||
import { getDomain, dashify, getIP } from '$lib/components/common';
|
||||
import { getDomain, dashify } from '$lib/components/common';
|
||||
import { t } from '$lib/translations';
|
||||
|
||||
export let source;
|
||||
export let settings;
|
||||
onMount(async () => {
|
||||
onMount(() => {
|
||||
const { organization, id, htmlUrl } = source;
|
||||
const { fqdn } = settings;
|
||||
const ip = await getIP();
|
||||
let host = `http://${ip}`;
|
||||
if (fqdn && fqdn.startsWith('https')) {
|
||||
host = `https://${ip}`;
|
||||
}
|
||||
console.log(ip, host);
|
||||
const host = dev
|
||||
? 'http://localhost:3000'
|
||||
: fqdn
|
||||
? fqdn
|
||||
: `http://${window.location.host}` || '';
|
||||
const domain = getDomain(fqdn);
|
||||
|
||||
let url = 'settings/apps/new';
|
||||
if (organization) url = `organizations/${organization}/settings/apps/new`;
|
||||
const name = dashify(domain) || 'app';
|
||||
|
Loading…
Reference in New Issue
Block a user