1,791
Customers have installed this app in at least 1,791 active instances.
1,791
Customers have installed this app in at least 1,791 active instances.
    by Stanislav Seletskiyfor Bitbucket Server 5.0.0 - 5.16.3, Bitbucket Data Center 5.0.0 - 5.16.3 and more versions
    Versions available for Bitbucket Server 2.7.2 - 2.12.6
    Bitbucket Server 3.0.0 - 4.14.12
    Supported
    Stanislav Seletskiy supports this app.

    Get support

    Supported
    Stanislav Seletskiy supports this app.

    Get support

    There is no need to write repo hooks on Java anymore

    There is no need to write repo hooks on Java anymore

    There is no need to write repo hooks on Java anymore

    Arbitary git commands can be used as executables

    Any arbitary executable can be used as hook

    Executables will fed with all data available

    In this example, it is very easy to create mirror hook to any other git repository (existing Mirror Extension provides mirroring only to Bitbucket Server instances).

    Also, shell scripts can be used as hooks.

    Following data is accessible: positional parameters specified in configuration screen, ref pushed from/to and ref name, user who invokes push and all repo data (working directory will be changed to underlying git repo).

    Arbitary git commands can be used as executables

    Any arbitary executable can be used as hook

    Executables will fed with all data available

    In this example, it is very easy to create mirror hook to any other git repository (existing Mirror Extension provides mirroring only to Bitbucket Server instances).

    Also, shell scripts can be used as hooks.

    Following data is accessible: positional parameters specified in configuration screen, ref pushed from/to and ref name, user who invokes push and all repo data (working directory will be changed to underlying git repo).

    More details

    The command specified in the configuration will be executed from repository dir, so it is possible to use any git command without any doubt.

    Keep in mind, that if you will print something in your Post-Receive Hook script, it will be silently discarded becase of Stash run Post-Receive Hooks asynchronously.

    More details

    The command specified in the configuration will be executed from repository dir, so it is possible to use any git command without any doubt.

    Keep in mind, that if you will print something in your Post-Receive Hook script, it will be silently discarded becase of Stash run Post-Receive Hooks asynchronously.

    Reviews for cloud

    (22)
    Sign in to write a review
    by Kirk Spragg on 2017-07-29
    This is great! We are a Python-centric dev shop and this allows me to write hooks in the language I know best.
    1 out of 1 found this review helpful
    Was this review helpful?YesNo
    by Michael Rudd on 2017-06-22
    This plugin used to work great for us with Stash 3.11.1 and Git 1.9.5 We just upgraded to BitBucket 5.1.0 with Git 2.12.1 and the plugin stopped working. Took me a while to identify, what I think is maybe a problem. Git 2.11 "significant changes to push handling on the server" (ref. https://github.com/sford/yet-another-commit-checker/issues/139), more specifically "...The new quarantining behavior that was added for pushes creates a random temporary directory where the newly-received objects are written, and exports GIT_OBJECT_DIRECTORY , GIT_ALTERNATE_OBJECT_DIRECTORIES and GIT_QUARANTINE_PATH ..." Our custom pre-receive hook uses 'ls-tree' to examine the ${newrev} commit for improperly named files and folders, which would violate our directory structure policy. Now we're getting an error that it is not a tree object. Similarly, 'cat-file' errors out with "could not get object info", 'log' says "bad object" and diff says "invalid range". It all boils down to git not being able to see the ${newrev} object that the plugin passes to the script. I was trying to find a place to submit this bug report, but didn't find any links on the project's GitHub page. For now, it looks like we'd have to disable this hook, unfortunately :(
    8 out of 9 found this review helpful
    Was this review helpful?YesNo
    by CyrilC on 2016-08-03
    Simple, efficient, just what I needed for controlling commit content in pre-receive hook. A simple python script checks a regexp, and controls if mentioned Jira Issue exists (mandatory in our process). This plugin should be integrated by default in bitbucket, because with a basic git installation, this feature exists and I was afraid to loose it while migrating to bitbucket.
    2 out of 2 found this review helpful
    Was this review helpful?YesNo
    by Kumaran on 2016-05-30
    Does this add-on works on datacenter version of Bitbucket server ?
    3 out of 3 found this review helpful
    Was this review helpful?YesNo
    by David Greene on 2016-03-04
    We'd really like to use this but we want to implement a Merge Check hook. Any plans to support Merge Check hooks in the future?
    Was this review helpful?YesNo

    Reviews for server

    (22)
    Sign in to write a review
    by Kirk Spragg on 2017-07-29
    This is great! We are a Python-centric dev shop and this allows me to write hooks in the language I know best.
    1 out of 1 found this review helpful
    Was this review helpful?YesNo
    by Michael Rudd on 2017-06-22
    This plugin used to work great for us with Stash 3.11.1 and Git 1.9.5 We just upgraded to BitBucket 5.1.0 with Git 2.12.1 and the plugin stopped working. Took me a while to identify, what I think is maybe a problem. Git 2.11 "significant changes to push handling on the server" (ref. https://github.com/sford/yet-another-commit-checker/issues/139), more specifically "...The new quarantining behavior that was added for pushes creates a random temporary directory where the newly-received objects are written, and exports GIT_OBJECT_DIRECTORY , GIT_ALTERNATE_OBJECT_DIRECTORIES and GIT_QUARANTINE_PATH ..." Our custom pre-receive hook uses 'ls-tree' to examine the ${newrev} commit for improperly named files and folders, which would violate our directory structure policy. Now we're getting an error that it is not a tree object. Similarly, 'cat-file' errors out with "could not get object info", 'log' says "bad object" and diff says "invalid range". It all boils down to git not being able to see the ${newrev} object that the plugin passes to the script. I was trying to find a place to submit this bug report, but didn't find any links on the project's GitHub page. For now, it looks like we'd have to disable this hook, unfortunately :(
    8 out of 9 found this review helpful
    Was this review helpful?YesNo
    by CyrilC on 2016-08-03
    Simple, efficient, just what I needed for controlling commit content in pre-receive hook. A simple python script checks a regexp, and controls if mentioned Jira Issue exists (mandatory in our process). This plugin should be integrated by default in bitbucket, because with a basic git installation, this feature exists and I was afraid to loose it while migrating to bitbucket.
    2 out of 2 found this review helpful
    Was this review helpful?YesNo
    by Kumaran on 2016-05-30
    Does this add-on works on datacenter version of Bitbucket server ?
    3 out of 3 found this review helpful
    Was this review helpful?YesNo
    by David Greene on 2016-03-04
    We'd really like to use this but we want to implement a Merge Check hook. Any plans to support Merge Check hooks in the future?
    Was this review helpful?YesNo

    Reviews for Data Center

    (22)
    Sign in to write a review
    by Kirk Spragg on 2017-07-29
    This is great! We are a Python-centric dev shop and this allows me to write hooks in the language I know best.
    1 out of 1 found this review helpful
    Was this review helpful?YesNo
    by Michael Rudd on 2017-06-22
    This plugin used to work great for us with Stash 3.11.1 and Git 1.9.5 We just upgraded to BitBucket 5.1.0 with Git 2.12.1 and the plugin stopped working. Took me a while to identify, what I think is maybe a problem. Git 2.11 "significant changes to push handling on the server" (ref. https://github.com/sford/yet-another-commit-checker/issues/139), more specifically "...The new quarantining behavior that was added for pushes creates a random temporary directory where the newly-received objects are written, and exports GIT_OBJECT_DIRECTORY , GIT_ALTERNATE_OBJECT_DIRECTORIES and GIT_QUARANTINE_PATH ..." Our custom pre-receive hook uses 'ls-tree' to examine the ${newrev} commit for improperly named files and folders, which would violate our directory structure policy. Now we're getting an error that it is not a tree object. Similarly, 'cat-file' errors out with "could not get object info", 'log' says "bad object" and diff says "invalid range". It all boils down to git not being able to see the ${newrev} object that the plugin passes to the script. I was trying to find a place to submit this bug report, but didn't find any links on the project's GitHub page. For now, it looks like we'd have to disable this hook, unfortunately :(
    8 out of 9 found this review helpful
    Was this review helpful?YesNo
    by CyrilC on 2016-08-03
    Simple, efficient, just what I needed for controlling commit content in pre-receive hook. A simple python script checks a regexp, and controls if mentioned Jira Issue exists (mandatory in our process). This plugin should be integrated by default in bitbucket, because with a basic git installation, this feature exists and I was afraid to loose it while migrating to bitbucket.
    2 out of 2 found this review helpful
    Was this review helpful?YesNo
    by Kumaran on 2016-05-30
    Does this add-on works on datacenter version of Bitbucket server ?
    3 out of 3 found this review helpful
    Was this review helpful?YesNo
    by David Greene on 2016-03-04
    We'd really like to use this but we want to implement a Merge Check hook. Any plans to support Merge Check hooks in the future?
    Was this review helpful?YesNo

    Cloud Pricing

    Server Pricing

    Data Center Pricing

    10 users$1025 users$7950 users$149100 users$279250 users$599500 & upAdditional pricing details
    25 users$88/year50 users$150/year100 users$280/year250 users$625/year500 users$1,100/year1000 & upAdditional pricing details

    Pricing FAQ

    How does server app pricing work?

    Server products and apps are hosted on your servers. This app is sold as a perpetual license, and the purchase price includes 12 months of maintenance (support and version updates).

    You can renew maintenance after 12 months at 50% of the current purchase price. You can upgrade the tier of your Atlassian product and app licenses at any time. Upgrade prices are calculated based on Atlassian's formula (view example).

    If app pricing changes after your initial purchase, there's a 60-day grandfathering period during which you can renew based on the old pricing.

    How do I determine my server pricing?

    Apps are billed based on the number of users in your Atlassian product. The app tier should match the licensed user tier of the Atlassian product. For example, if you have a Confluence license for 500 users, you should purchase the 500-user tier for apps. Even if fewer users want to use the app than your Atlassian product license, the two licenses should match exactly.

    Can I install this app in a Data Center product?

    Yes, this app has a Data Center approved version. If you're using a Data Center product, you should install the Data Center version of the app.

    Learn more about Data Center approved apps

    What type of license do I need if I'm using this app in a Data Center product?

    Because this app has a Data Center approved version, you should purchase a Data Center license for the app.

    If you already own a server license for this app, you can continue using the server license in your Data Center product for a limited period of time.

    Learn more about Data Center licensing

    Do you offer academic, community, or open-source licenses for server apps?

    For server apps, academic licenses are available at a 50% discount if you have an academic license for your Atlassian product.

    Community and open-source licenses are available for server apps. Learn more about community and open source licenses.

    Can I extend my free trial?

    For server apps, you can extend your app trial up to 5 times - in other words, for up to six months. Extend your trial by generating a new evaluation license key from Atlassian Marketplace. Click Try it free and you'll be directed to generate a new license. Paste this license key into the app listing in UPM from your Atlassian product, and you're all set.

    How can I buy apps for my legacy Jira Server or Confluence Server license?

    If you own a legacy Jira Server Unlimited (100+ users) or Confluence Server Unlimited (2000+ users) license purchased in 2012 or earlier, legacy app pricing is no longer available. You have two options for app purchasing:

    • Purchase the app at the non-legacy Unlimited (10000+ users) tier.
    • Renew your Jira or Confluence license at a non-legacy tier, then purchase the app at the same tier.

    Learn more

    Pricing FAQ

    How does Data Center app pricing work?

    Data Center apps are sold as an annual subscription. You are eligible for support and version updates as long as your subscription is active.

    If app pricing changes after your initial purchase, there's a 60-day grandfathering period during which you can renew based on the old pricing.

    How do I determine my Data Center pricing?

    Apps are billed based on the number of users in your Atlassian product. The app tier should match the licensed user tier of the Atlassian product. For example, if you have a Confluence license for 500 users, you should purchase the 500-user tier for apps. Even if fewer users want to use the app than your Atlassian product license, the two licenses should match exactly.

    Can I install this app in a Data Center product?

    Yes, this app has a Data Center approved version. If you're using a Data Center product, you should install the Data Center version of the app.

    Learn more about Data Center approved apps

    What type of license do I need if I'm using this app in a Data Center product?

    Because this app has a Data Center approved version, you should purchase a Data Center license for the app.

    If you already own a server license for this app, you can continue using the server license in your Data Center product for a limited period of time.

    Learn more about Data Center licensing

    Do you offer academic, community, or open-source licenses for Data Center apps?

    For Data Center apps, academic licenses are available at a 50% discount if you have an academic license for your Atlassian product.

    Community and open-source licenses are not available for Data Center apps. Learn more about community and open source licenses.

    Can I extend my free trial?

    For Data Center apps, you can extend your app trial up to 5 times - in other words, for up to six months. Extend your trial by generating a new evaluation license key from Atlassian Marketplace. Click Try it free and you'll be directed to generate a new license. Paste this license key into the app listing in UPM from your Atlassian product, and you're all set.

    Stanislav Seletskiy provides support for this app.

    Stanislav Seletskiy provides support for this app.

    Vendor support resources

    Documentation

    Find out how this app works.

    See existing Q&A in Atlassian CommunityAsk a question in the Atlassian Community

    Atlassian-hosted discussions connect you to other customers who use this app.

    Vendor support resources

    Documentation

    Find out how this app works.

    See existing Q&A in Atlassian CommunityAsk a question in the Atlassian Community

    Atlassian-hosted discussions connect you to other customers who use this app.

    Versions

    Version 4.7-1 Bitbucket Server 5.0.0 - 5.16.3 Released 2019-01-14

    Summary

    Two new options for merge check to control cache & tooltip

    Details

    New checkboxes were added to merge checks. One allows to control whether results are cached. The second allows the check results to show in the merge button tooltip.

    Versions

    Version 4.8-3 Bitbucket Data Center 5.0.0 - 5.16.3 Released 2019-04-17

    Summary

    DC release

    Installation

    1. Log into your Bitbucket instance as an admin.
    2. Click the admin dropdown and choose Atlassian Marketplace. The Manage add-ons screen loads.
    3. Click Find new apps or Find new add-ons from the left-hand side of the page.
    4. Locate External Hooks via search. The appropriate app version appears in the search results.
    5. Click Try free to begin a new trial or Buy now to purchase a license for External Hooks. You're prompted to log into MyAtlassian. External Hooks begins to download.
    6. Enter your information and click Generate license when redirected to MyAtlassian.
    7. Click Apply license. If you're using an older version of UPM, you can copy and paste the license into your Bitbucket instance.

    To find older External Hooks versions compatible with your instance, you can look through our version history page.

    1. Log into your Bitbucket instance as an admin.
    2. Click the admin dropdown and choose Atlassian Marketplace. The Manage add-ons screen loads.
    3. Click Find new apps or Find new add-ons from the left-hand side of the page.
    4. Locate External Hooks via search. The appropriate app version appears in the search results.
    5. Click Try free to begin a new trial or Buy now to purchase a license for External Hooks. You're prompted to log into MyAtlassian. External Hooks begins to download.
    6. Enter your information and click Generate license when redirected to MyAtlassian.
    7. Click Apply license. If you're using an older version of UPM, you can copy and paste the license into your Bitbucket instance.

    To find older External Hooks versions compatible with your instance, you can look through our version history page.

    Similar apps