标签: bitbucket-api

通过 cURL 删除 bitbucket 存储库

有人知道如何通过 cURL 从 bitbucket 中删除存储库吗?

目前我已经制作了脚本来通过 curl 在 bitbucket 上创建远程存储库

#!/bin/bash
while read line
do
curl --user user:password https://api.bitbucket.org/1.0/repositories/ --data name=$line --data is_private=true --data owner=OWNER
done<repo_list.txt
Run Code Online (Sandbox Code Playgroud)

但现在我无法通过 curl 从 bitbucket 中删除该存储库

我正在使用

curl -X DELETE --user user:password https://api.bitbucket.org/1.0/repositories/ --data name=$line --data is_private=true --data owner=OWNER
Run Code Online (Sandbox Code Playgroud)

并有错误 {"error": {"message": "'username'", "detail": " File \"/opt/python/domains/bitbucket.org/current/bitbucket/local/env/lib/python2. 7/site-packages/piston/resource.py\", line 208, in call\n}

https://bitbucket.org/zhemao/bitbucket-cli仅从用户帐户中删除存储库,但不能选择删除我所属的其他所有者拥有的存储库。

有任何想法吗 ?

git curl bitbucket bitbucket-api

2
推荐指数
1
解决办法
5028
查看次数

如何使用curl创建bitbucket存储库?

我尝试了多种方式

curl -you 'USERNAME' https://api.bitbucket.org/1.0/repositories -d '{"name":"REPO"}'
curl -k -X POST --user user: pass \ "https://api.bitbucket.org/1.0/repositories" -d "name=project_name"
Run Code Online (Sandbox Code Playgroud)

我想念什么?

curl bitbucket bitbucket-api bitbucket-server

2
推荐指数
1
解决办法
1749
查看次数

bitbucket-build-status-notifier-plugin 使用凭据和管道

我一直在尝试使用 Jenkins 的“Bitbucket Build Status Notifier”插件来通知 Bitbucket 提交后 Maven 构建是否成功。

可用的文档很好地解释了如何创建凭据并将它们添加到 Jenkins(我将它们全局添加到 Jenkins master)

不幸的是,插件页面(https://wiki.jenkins-ci.org/display/JENKINS/Bitbucket+Cloud+Build+Status+Notifier+Plugin)和 GitHub 项目(https://github.com/jenkinsci/ bitbucket-build-status-notifier-plugin ) 没有描述如何将 Bitbucket 凭据与通知程序的管道版本一起使用 ( https://issues.jenkins-ci.org/browse/JENKINS-33841 )

我曾尝试在 Jenkins 文件中使用它,如下所示:

pipeline {

agent {
    label 'jenkins-slave'
}

stages {
    stage ('Build') {
        steps {
            script {
                withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: '050a0876-fb6b-....',
                usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) {
                    bitbucketStatusNotify(buildState: 'INPROGRESS')

                    sh '''#!/bin/bash
                        mvn clean package
                        ...
                      '''
                    bitbucketStatusNotify(buildState: 'SUCCESSFUL')
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,我似乎总是以

[Pipeline] // node
[Pipeline] End of Pipeline …
Run Code Online (Sandbox Code Playgroud)

bitbucket-api jenkins jenkins-plugins jenkins-pipeline bcbsn

2
推荐指数
1
解决办法
1864
查看次数

如何获取bitbucket的refresh_token?

我正在使用以下 API

https://bitbucket.org/site/oauth2/authorize?client_id={client_id}&response_type=token
Run Code Online (Sandbox Code Playgroud)

获取 access_token 但 access_token 在 1 小时后过期,我需要 refresh_token 但我无法在上述 API 的响应中获取 refresh_token。上述API的响应是

https://www.example.com/#access_token={access_token}&scopes={scopes}&expires_in=3600&token_type=bearer
Run Code Online (Sandbox Code Playgroud)

您可以在上面的回复中看到没有或者是否有其他方法可以获得 refresh_token。

我想将上述 API 调用为 GET 方法。

可以请人帮忙。

谢谢你!

bitbucket token bitbucket-api access-token refresh-token

2
推荐指数
1
解决办法
2136
查看次数

在JavaScript中生成格式良好的SSH密钥

我正在用JavaScript 开发一个Bitbucket API包装器.我正在尝试为添加SSH密钥的方法编写测试.我天真地试图创建一个可信的SSH密钥是不成功的.这是我生成虚拟键的方法:

  1. 从"ssh-rsa"开始
  2. 附加一个279字符的随机字符串的Base64编码表示
  3. 追加""
  4. 附加一个16个字符的随机字符串
  5. 追加"@"
  6. 附加一个16个字符的随机字符串
  7. 追加".com"

当我发布以这种方式生成的SSH密钥时,Bitbucket返回400 Bad Request .幸运的是我可以访问Bitbucket的源代码,所以我能够深入挖掘一下.Bitbucket通过运行它来验证SSH密钥ssh-keygen.

我不明白SSH密钥是如何生成的,所以我可能会问一个愚蠢的问题.是否有可能生成足够令人信服的SSH密钥ssh-keygen?这是输出:

$ ssh-keygen -l -f ~/Desktop/dummy_rsa.pub 
buffer_get_string_ret: bad string length 1903654498
key_from_blob: can't read key type
key_read: key_from_blob cXd2YnRzZXpha3Rld2V4YmdieWdoeWl2aXpla3hkaHBodnlteHl2ZHl0bnloYmRyYWZrdnVxaWR3cHBydnFmZWFkaHp0aGRwYml6ZXVxY3ZlZ3NiZ29lanl0cG9vZmlnZ2dyZmJ3aWxsdXJhb2puYWRjY3F0YW5rcGV3Z3dkc3lxd2tkb3d6emFzbXpubXJ1eGN2bm53a3l6bmRjenV1dnplbnFtZ3Z5bm96ZGZhandwcG9mcHVoaWFkZ25ud3VkdnB0enV6Zm51bWVxanhzanlwa2ZodGxpd2xld2pnY3dhbmJ6aXVyamp6c29rbm54dHp2enJmeWhnY2ZrcWlqemFscGNnbWJsY3lpcmRtYXFkbHB6c3l0 duvrnzsladfrmccr@xqrbenpfryhoklgw.com
 failed
/Users/dc/Desktop/dummy_rsa.pub is not a public key file.
Run Code Online (Sandbox Code Playgroud)

为了清楚起见,我不需要生成"有效"的SSH密钥,我只需要能够测试各种API端点.此外,由于测试在浏览器中运行,我无法生成密钥.

javascript ssh-keys bitbucket-api

1
推荐指数
1
解决办法
2897
查看次数

将Guzzle POST提交到Bit Bucket访问令牌端点时出现错误请求

我一直在尝试使用OAuthv1.a和bit bucket实现一个简单的身份验证流程.当我使用先前提供的验证程序和oauth_token请求访问令牌时,我的问题就出现了.我总是被给出400错误而没有真正指示为什么.

Client error response
[status code] 400
[reason phrase] BAD REQUEST
[url] https://bitbucket.org/api/1.0/oauth/access_token?oauth_consumer_key=<snip>&oauth_nonce=fba24cfb3147ca7d32b3924fad43fd509bbb9bc1&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1381034857&oauth_token=fFz369NUmCHNyn7PGj&oauth_verifier=6724267371&oauth_version=1.0&oauth_signature=1H7%2Bvx0fVh2Sj%2FcDAE2QzkTx8us%3D
Run Code Online (Sandbox Code Playgroud)

我在guzzle中使用OauthPlugin类来构建签名参数并按文档中的描述提交帖子请求.有没有人有这样的问题与任何其他OAuthv1提供商或Bit Bucket专门?

$client = new Client('https://bitbucket.org/api/1.0/');

    $oauth  = new OauthPlugin( array(
        'request_method' => OauthPlugin::REQUEST_METHOD_QUERY,
        'consumer_key'  => Config::get('oauthv1.key'),
        'token' => Input::get('oauth_token'),
        'verifier' => Input::get('oauth_verifier')
        )
    );

    $client->addSubscriber($oauth);
    $client->post('oauth/access_token')->send();
Run Code Online (Sandbox Code Playgroud)

php oauth bitbucket bitbucket-api guzzle

1
推荐指数
1
解决办法
2454
查看次数

Bitbucket使用API​​添加POST HOOK

我可以看到可以在界面中向Bitbucket添加git钩子,如下所示:

在此处输入图片说明

是否可以POST使用Bitbucket的API而不是使用Web界面来添加像这样的钩子?是否可以使用API​​删除现有的挂钩?

bitbucket bitbucket-api

1
推荐指数
1
解决办法
1175
查看次数

配置 bitbucket 存储库以“激活”管道

我在 BitBucket 项目中有多个存储库。我希望自动创建一个 bitbucket 存储库,并启用管道(设置管道配置应该很容易,推送一个 bitbucket-pipelines.yml 文件)。我如何使用 REST API 做到这一点?

bitbucket-api bitbucket-pipelines

1
推荐指数
2
解决办法
1099
查看次数

Bitbucket API - 使用 access_token

我正在尝试获取我们公司 bitbucket 云的回购详细信息。使用 API:

curl --request GET \
   --url 'https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}' \
   --header 'Authorization: Bearer <access_token>' \
   --header 'Accept: application/json'
Run Code Online (Sandbox Code Playgroud)

来自 https://developer.atlassian.com/cloud/bitbucket/rest/api-group-repositories/#api-repositories-workspace-repo-slug-get

问题是我使用的每个密钥/令牌都会收到以下错误响应

{"type": "error", "error": {"message": "Access token expired."}}
Run Code Online (Sandbox Code Playgroud)

我创建了 OAuth 2.0 密钥和秘密,并尝试了它们。

--header 'Authorization: Bearer <KEY>'
--header 'Authorization: Bearer <SECRET>'
Run Code Online (Sandbox Code Playgroud)

我也尝试过应用程序密码:

--header 'Authorization: Bearer <APP PASSWORD>'
Run Code Online (Sandbox Code Playgroud)

还可以使用 SSH 密钥:

--header 'Authorization: Bearer <SSH KEY>'
Run Code Online (Sandbox Code Playgroud)

但我得到了同样的错误。

谢谢

bitbucket bitbucket-api

1
推荐指数
1
解决办法
4779
查看次数