Edits history of script submission #1439 for ' Update a repository (bitbucket)'

  • nativets
    One script reply has been approved by the moderators
    Ap­pro­ved
    type Bitbucket = {
      username: string;
      password: string;
    };
    /**
     * Update a repository
     * Since this endpoint can be used to both update and to create a
    repository, the request body depends on the intent.
     */
    export async function main(
      auth: Bitbucket,
      repo_slug: string,
      workspace: string,
      body: { type: string; [k: string]: unknown } & {
        links?: {
          self?: { href?: string; name?: string };
          html?: { href?: string; name?: string };
          avatar?: { href?: string; name?: string };
          pullrequests?: { href?: string; name?: string };
          commits?: { href?: string; name?: string };
          forks?: { href?: string; name?: string };
          watchers?: { href?: string; name?: string };
          downloads?: { href?: string; name?: string };
          clone?: { href?: string; name?: string }[];
          hooks?: { href?: string; name?: string };
        };
        uuid?: string;
        full_name?: string;
        is_private?: boolean;
        parent?: unknown;
        scm?: "git";
        owner?: { type: string; [k: string]: unknown } & {
          links?: {
            avatar?: { href?: string; name?: string };
            [k: string]: unknown;
          };
          created_on?: string;
          display_name?: string;
          username?: string;
          uuid?: string;
          [k: string]: unknown;
        };
        name?: string;
        description?: string;
        created_on?: string;
        updated_on?: string;
        size?: number;
        language?: string;
        has_issues?: boolean;
        has_wiki?: boolean;
        fork_policy?: "allow_forks" | "no_public_forks" | "no_forks";
        project?: { type: string; [k: string]: unknown } & {
          links?: {
            html?: { href?: string; name?: string };
            avatar?: { href?: string; name?: string };
          };
          uuid?: string;
          key?: string;
          owner?: ({ type: string; [k: string]: unknown } & {
            links?: {
              avatar?: { href?: string; name?: string };
              [k: string]: unknown;
            };
            created_on?: string;
            display_name?: string;
            username?: string;
            uuid?: string;
            [k: string]: unknown;
          }) & {
            links?: {
              avatar?: { href?: string; name?: string };
              [k: string]: unknown;
            } & {
              self?: { href?: string; name?: string };
              html?: { href?: string; name?: string };
              members?: { href?: string; name?: string };
              projects?: { href?: string; name?: string };
              repositories?: { href?: string; name?: string };
              [k: string]: unknown;
            };
            [k: string]: unknown;
          };
          name?: string;
          description?: string;
          is_private?: boolean;
          created_on?: string;
          updated_on?: string;
          has_publicly_visible_repos?: boolean;
          [k: string]: unknown;
        };
        mainbranch?: {
          type: string;
          links?: {
            self?: { href?: string; name?: string };
            commits?: { href?: string; name?: string };
            html?: { href?: string; name?: string };
          };
          name?: string;
          target?: ({ type: string; [k: string]: unknown } & {
            hash?: string;
            date?: string;
            author?: { type: string; [k: string]: unknown } & {
              raw?: string;
              user?: { type: string; [k: string]: unknown } & {
                links?: {
                  avatar?: { href?: string; name?: string };
                  [k: string]: unknown;
                };
                created_on?: string;
                display_name?: string;
                username?: string;
                uuid?: string;
                [k: string]: unknown;
              };
              [k: string]: unknown;
            };
            message?: string;
            summary?: {
              raw?: string;
              markup?: "markdown" | "creole" | "plaintext";
              html?: string;
            };
            parents?: unknown[];
            [k: string]: unknown;
          }) & {
            repository?: unknown;
            participants?: ({ type: string; [k: string]: unknown } & {
              user?: { type: string; [k: string]: unknown } & {
                links?: {
                  avatar?: { href?: string; name?: string };
                  [k: string]: unknown;
                };
                created_on?: string;
                display_name?: string;
                username?: string;
                uuid?: string;
                [k: string]: unknown;
              };
              role?: "PARTICIPANT" | "REVIEWER";
              approved?: boolean;
              state?: "approved" | "changes_requested" | null;
              participated_on?: string;
              [k: string]: unknown;
            })[];
            [k: string]: unknown;
          };
          [k: string]: unknown;
        } & {
          merge_strategies?: ("merge_commit" | "squash" | "fast_forward")[];
          default_merge_strategy?: string;
          [k: string]: unknown;
        };
        [k: string]: unknown;
      }
    ) {
      const url = new URL(
        `https://api.bitbucket.org/2.0/repositories/${workspace}/${repo_slug}`
      );
    
      const response = await fetch(url, {
        method: "PUT",
        headers: {
          "Content-Type": "application/json",
          Authorization: "Basic " + btoa(`${auth.username}:${auth.password}`),
        },
        body: JSON.stringify(body),
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 375 days ago

  • nativets
    type Bitbucket = {
      username: string;
      password: string;
    };
    /**
     * Update a repository
     * Since this endpoint can be used to both update and to create a
    repository, the request body depends on the intent.
     */
    export async function main(
      auth: Bitbucket,
      repo_slug: string,
      workspace: string,
      body: { type: string; [k: string]: unknown } & {
        links?: {
          self?: { href?: string; name?: string };
          html?: { href?: string; name?: string };
          avatar?: { href?: string; name?: string };
          pullrequests?: { href?: string; name?: string };
          commits?: { href?: string; name?: string };
          forks?: { href?: string; name?: string };
          watchers?: { href?: string; name?: string };
          downloads?: { href?: string; name?: string };
          clone?: { href?: string; name?: string }[];
          hooks?: { href?: string; name?: string };
        };
        uuid?: string;
        full_name?: string;
        is_private?: boolean;
        parent?: unknown;
        scm?: "git";
        owner?: { type: string; [k: string]: unknown } & {
          links?: {
            avatar?: { href?: string; name?: string };
            [k: string]: unknown;
          };
          created_on?: string;
          display_name?: string;
          username?: string;
          uuid?: string;
          [k: string]: unknown;
        };
        name?: string;
        description?: string;
        created_on?: string;
        updated_on?: string;
        size?: number;
        language?: string;
        has_issues?: boolean;
        has_wiki?: boolean;
        fork_policy?: "allow_forks" | "no_public_forks" | "no_forks";
        project?: { type: string; [k: string]: unknown } & {
          links?: {
            html?: { href?: string; name?: string };
            avatar?: { href?: string; name?: string };
          };
          uuid?: string;
          key?: string;
          owner?: ({ type: string; [k: string]: unknown } & {
            links?: {
              avatar?: { href?: string; name?: string };
              [k: string]: unknown;
            };
            created_on?: string;
            display_name?: string;
            username?: string;
            uuid?: string;
            [k: string]: unknown;
          }) & {
            links?: {
              avatar?: { href?: string; name?: string };
              [k: string]: unknown;
            } & {
              self?: { href?: string; name?: string };
              html?: { href?: string; name?: string };
              members?: { href?: string; name?: string };
              projects?: { href?: string; name?: string };
              repositories?: { href?: string; name?: string };
              [k: string]: unknown;
            };
            [k: string]: unknown;
          };
          name?: string;
          description?: string;
          is_private?: boolean;
          created_on?: string;
          updated_on?: string;
          has_publicly_visible_repos?: boolean;
          [k: string]: unknown;
        };
        mainbranch?: {
          type: string;
          links?: {
            self?: { href?: string; name?: string };
            commits?: { href?: string; name?: string };
            html?: { href?: string; name?: string };
          };
          name?: string;
          target?: ({ type: string; [k: string]: unknown } & {
            hash?: string;
            date?: string;
            author?: { type: string; [k: string]: unknown } & {
              raw?: string;
              user?: { type: string; [k: string]: unknown } & {
                links?: {
                  avatar?: { href?: string; name?: string };
                  [k: string]: unknown;
                };
                created_on?: string;
                display_name?: string;
                username?: string;
                uuid?: string;
                [k: string]: unknown;
              };
              [k: string]: unknown;
            };
            message?: string;
            summary?: {
              raw?: string;
              markup?: "markdown" | "creole" | "plaintext";
              html?: string;
            };
            parents?: unknown[];
            [k: string]: unknown;
          }) & {
            repository?: unknown;
            participants?: ({ type: string; [k: string]: unknown } & {
              user?: { type: string; [k: string]: unknown } & {
                links?: {
                  avatar?: { href?: string; name?: string };
                  [k: string]: unknown;
                };
                created_on?: string;
                display_name?: string;
                username?: string;
                uuid?: string;
                [k: string]: unknown;
              };
              role?: "PARTICIPANT" | "REVIEWER";
              approved?: boolean;
              state?: "approved" | "changes_requested" | null;
              participated_on?: string;
              [k: string]: unknown;
            })[];
            [k: string]: unknown;
          };
          [k: string]: unknown;
        } & {
          merge_strategies?: ("merge_commit" | "squash" | "fast_forward")[];
          default_merge_strategy?: string;
          [k: string]: unknown;
        };
        [k: string]: unknown;
      }
    ) {
      const url = new URL(
        `https://api.bitbucket.org/2.0/repositories/${workspace}/${repo_slug}`
      );
    
      const response = await fetch(url, {
        method: "PUT",
        headers: {
          "Content-Type": "application/json",
          Authorization: "Basic " + btoa(`${auth.username}:${auth.password}`),
        },
        body: JSON.stringify(body),
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 935 days ago

  • nativets
    type Bitbucket = {
      username: string;
      password: string;
    };
    /**
     * Update a repository
     * Since this endpoint can be used to both update and to create a
    repository, the request body depends on the intent.
    
    #### Creation
    
    See the POST documentation for the repository endpoint for an example
    of the request body.
    
    #### Update
    
    Note: Changing the `name` of the repository will cause the location to
    be changed. This is because the URL of the repo is derived from the
    name (a process called slugification). In such a scenario, it is
    possible for the request to fail if the newly created slug conflicts
    with an existing repository's slug. But if there is no conflict,
    the new location will be returned in the `Location` header of the
    response.
     */
    export async function main(
      auth: Bitbucket,
      repo_slug: string,
      workspace: string,
      body: { type: string; [k: string]: unknown } & {
        links?: {
          self?: { href?: string; name?: string };
          html?: { href?: string; name?: string };
          avatar?: { href?: string; name?: string };
          pullrequests?: { href?: string; name?: string };
          commits?: { href?: string; name?: string };
          forks?: { href?: string; name?: string };
          watchers?: { href?: string; name?: string };
          downloads?: { href?: string; name?: string };
          clone?: { href?: string; name?: string }[];
          hooks?: { href?: string; name?: string };
        };
        uuid?: string;
        full_name?: string;
        is_private?: boolean;
        parent?: unknown;
        scm?: "git";
        owner?: { type: string; [k: string]: unknown } & {
          links?: {
            avatar?: { href?: string; name?: string };
            [k: string]: unknown;
          };
          created_on?: string;
          display_name?: string;
          username?: string;
          uuid?: string;
          [k: string]: unknown;
        };
        name?: string;
        description?: string;
        created_on?: string;
        updated_on?: string;
        size?: number;
        language?: string;
        has_issues?: boolean;
        has_wiki?: boolean;
        fork_policy?: "allow_forks" | "no_public_forks" | "no_forks";
        project?: { type: string; [k: string]: unknown } & {
          links?: {
            html?: { href?: string; name?: string };
            avatar?: { href?: string; name?: string };
          };
          uuid?: string;
          key?: string;
          owner?: ({ type: string; [k: string]: unknown } & {
            links?: {
              avatar?: { href?: string; name?: string };
              [k: string]: unknown;
            };
            created_on?: string;
            display_name?: string;
            username?: string;
            uuid?: string;
            [k: string]: unknown;
          }) & {
            links?: {
              avatar?: { href?: string; name?: string };
              [k: string]: unknown;
            } & {
              self?: { href?: string; name?: string };
              html?: { href?: string; name?: string };
              members?: { href?: string; name?: string };
              projects?: { href?: string; name?: string };
              repositories?: { href?: string; name?: string };
              [k: string]: unknown;
            };
            [k: string]: unknown;
          };
          name?: string;
          description?: string;
          is_private?: boolean;
          created_on?: string;
          updated_on?: string;
          has_publicly_visible_repos?: boolean;
          [k: string]: unknown;
        };
        mainbranch?: {
          type: string;
          links?: {
            self?: { href?: string; name?: string };
            commits?: { href?: string; name?: string };
            html?: { href?: string; name?: string };
          };
          name?: string;
          target?: ({ type: string; [k: string]: unknown } & {
            hash?: string;
            date?: string;
            author?: { type: string; [k: string]: unknown } & {
              raw?: string;
              user?: { type: string; [k: string]: unknown } & {
                links?: {
                  avatar?: { href?: string; name?: string };
                  [k: string]: unknown;
                };
                created_on?: string;
                display_name?: string;
                username?: string;
                uuid?: string;
                [k: string]: unknown;
              };
              [k: string]: unknown;
            };
            message?: string;
            summary?: {
              raw?: string;
              markup?: "markdown" | "creole" | "plaintext";
              html?: string;
            };
            parents?: unknown[];
            [k: string]: unknown;
          }) & {
            repository?: unknown;
            participants?: ({ type: string; [k: string]: unknown } & {
              user?: { type: string; [k: string]: unknown } & {
                links?: {
                  avatar?: { href?: string; name?: string };
                  [k: string]: unknown;
                };
                created_on?: string;
                display_name?: string;
                username?: string;
                uuid?: string;
                [k: string]: unknown;
              };
              role?: "PARTICIPANT" | "REVIEWER";
              approved?: boolean;
              state?: "approved" | "changes_requested" | null;
              participated_on?: string;
              [k: string]: unknown;
            })[];
            [k: string]: unknown;
          };
          [k: string]: unknown;
        } & {
          merge_strategies?: ("merge_commit" | "squash" | "fast_forward")[];
          default_merge_strategy?: string;
          [k: string]: unknown;
        };
        [k: string]: unknown;
      }
    ) {
      const url = new URL(
        `https://api.bitbucket.org/2.0/repositories/${workspace}/${repo_slug}`
      );
    
      const response = await fetch(url, {
        method: "PUT",
        headers: {
          "Content-Type": "application/json",
          Authorization: "Basic " + btoa(`${auth.username}:${auth.password}`),
        },
        body: JSON.stringify(body),
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 935 days ago