About
Information for developers who wish to create custom applications based on FreeSWITCH or contribute improvements and bug fixes back to the FS community. See also: Contributing Code.
The
FreeSWITCH™ development team uses the Stash repository as part of the single sign-on system in use with JIRA. Convert your FreeSWITCH Source Repos from gitolite to stash using these instructions.
Stash Repository
For Commiters
Change your origin remote to the new repo using these instructions.
SSH
git clone ssh://git@stash.freeswitch.org:7999/fs/freeswitch.git
PLEASE NOTE THE SPECIAL SSH PORT 7999. If you use shortcuts in your ssh_config, you must update this.
Example ssh_config for those who need it. (Most people do not need this)
host stash user git hostname stash.freeswitch.org port 7999 identityfile ~/.ssh/my_pubkey_file IdentitiesOnly yes
HTTPS
git clone https://${YOUR_USERNAME}@freeswitch.org/stash/scm/fs/freeswitch.git
YOUR_USERNAME is the same as your JIRA user name. Git will prompt your for you password when required.
Non-Commiters
Execute the following command to point to Stash:
git clone https://freeswitch.org/stash/scm/fs/freeswitch.git
Changes In Commit Hooks
The format of the commit hooks for updating JIRA has changed as of 2 July, 2014.
Stash, Fisheye, and JIRA all work together now and allow us to use Atlassian’s Smart Commit Hook mechanism.
In your commit message please do the following:
FS-12345 #new_state #comment Comment for the JIRA Ticket
This can appear anywhere in the commit message.
Fisheye Authentication
Fisheye Authentication
For Smart Commit Hooks to work properly, you MUST allow JIRA to access your Fisheye account. To do this, you must authenticate to JIRA from within Fisheye.
Simple steps to authenticate:
Login to Fisheye using your standard FreeSWITCH.org password. (Same as your JIRA login)
Go to the FreeSWITCH Repo change log in Fisheye (https://fisheye.freeswitch.org/changelog/FreeSWITCH)
Click on any link to a JIRA ticket (hint: those are the links to FS-#####)
When prompted allow JIRA access.
This is necessary to allow Fisheye to masquerade as you and update the tickets in question.
For more information on Smart Commit Hooks please see:
https://confluence.atlassian.com/display/FISHEYE/Using+smart+commits
Self Manage Your SSH Keys
Stash allows you to manage your own SSH Keys for accessing the git repositories.
To add or delete your keys:
Login to Stash using your standard FreeSWITCH Username/password (this is the same one as you use on JIRA)
On the Main User Menu (Click your Avatar upper right corner of the page)
Select “Manage Account”
Select SSH Keys (Left vertical pane menu).
From this point you can add or delete the SSH Public Keys you use to access the repo.
When adding multiple keys, you must add them one at a time. Do not paste multiple Keys.
Additional Stash Features
Many of you have used GitHub and understand the Fork, Patch, and Pull Request mechanism. Stash allows these same operations. You can now fork your own copy of FreeSWITCH, do your dev work, and fire off a Pull Request to the FreeSWITCH Dev Team! Of course we will still accept patches the old fashioned way from JIRA.