Forgot to cc the list.
---------- Forwarded message ---------- From: Rob Day <[email protected]> Date: 9 April 2014 23:24 Subject: Re: [Sipp-users] Connecting phone system to SIPp To: "Munzer,David J" <[email protected]> David, It looks like your scenario isn't valid XML - the '<scenario name="Basic Sipstone UAC"> ' section appears twice, and the first <send> doesn't have a matching </send>. This is probably why SIPp's XML parser can't understand it. Some of your URIs look odd - you have them in the form '[Kamailio]@[10.0.0.160]:[5060]'. The square brackets shouldn't be there - words in square brackets (like [local_ip] or [local_port]) represent SIPp keywords which are filled in with the actual local IP, local port or other variables at runtime. If you want to hardcode the user "Kamailio", you just need "Kamailio" - using "[Kamailio]" will try and look up a keyword called "Kamailio" and fail. Likewise, [5060] will look for the non-existent keyword 5060. You can find more information at http://sipp.sourceforge.net/doc/reference.html#Structure+of+client+%28UAC+like%29+XML+scenarios. Best, Rob On 9 April 2014 19:24, Munzer,David J <[email protected]> wrote: > Dear Rob, > > I successfully created the xml file and input in the necessary > information but I am having issues trying to run it. I input "./sipp > -sf custom-uac.xml" and receive the error message, "2014-04-10 > 03:08:56:985 1397113736.985701: Unable to load or parse > 'custom-uac.xml' xml scenario file." I purposely have local ip port set > because when I did netstat -a on the command prompt, multiple ports were > shown and i was not sure which was the proper one. So I'm testing each > port by filling it in where it says local ip port. I knew that the calls > may not have gone properly until the correct port was specified but i > didnt expect for sipp to be unable to load the xml file at all. Any > possible suggestions? > > Thankfully, > David > > Below is what I have defined in the XML file. > > <!-- This program is free software; you can redistribute it and/or > --> > <!-- modify it under the terms of the GNU General Public License as > --> > <!-- published by the Free Software Foundation; either version 2 of the > --> > <!-- License, or (at your option) any later version. > --> > <!-- > --> > <!-- This program is distributed in the hope that it will be useful, > --> > <!-- but WITHOUT ANY WARRANTY; without even the implied warranty of > --> > <!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > --> > <!-- GNU General Public License for more details. > --> > <!-- > --> > <!-- You should have received a copy of the GNU General Public License > --> > <!-- along with this program; if not, write to the > --> > <!-- Free Software Foundation, Inc., > --> > <!-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA > --> > <!-- > --> > <!-- Sipp default 'uac' scenario. > --> > <!-- > --> > > <scenario name="Basic Sipstone UAC"> > <!-- In client mode (sipp placing calls), the Call-ID MUST be > --> > <!-- generated by sipp. To do so, use [call_id] keyword. > --> > <send retrans="500"> > <![CDATA[ > > INVITE sip:[Kamailio]@[10.0.0.160]:[5060] SIP/2.0 > Via: SIP/2.0/[transport] > [10.0.0.210]:[local_port];branch=[branch] > From: sipp > <sip:sipp@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number] > To: sut <sip:[Kamailio]@[10.0.0.160]:[5060]> > Call-ID: [call_id] > CSeq: 1 INVITE > Contact: sip:sipp@[10.0.0.210]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > --> > <!-- > --> > <!-- Sipp default 'uac' scenario. > --> > <!-- > --> > > <scenario name="Basic Sipstone UAC"> > <!-- In client mode (sipp placing calls), the Call-ID MUST be > --> > <!-- generated by sipp. To do so, use [call_id] keyword. > --> > <send retrans="500"> > <![CDATA[ > > INVITE sip:[Kamailio]@[10.0.0.160]:[5060] SIP/2.0 > Via: SIP/2.0/[transport] > [10.0.0.210]:[local_port];branch=[branch] > From: sipp > <sip:sipp@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number] > To: sut <sip:[Kamailio]@[10.0.0.160]:[5060]> > Call-ID: [call_id] > CSeq: 1 INVITE > Contact: sip:sipp@[10.0.0.210]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Type: application/sdp > Content-Length: [len] > > v=0 > o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] > s=- > c=IN IP[media_ip_type] [media_ip] > t=0 0 > m=audio [media_port] RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > > ]]> > </send> > > <recv response="100" > optional="true"> > </recv> > > <recv response="180" optional="true"> > </recv> > > <recv response="183" optional="true"> > </recv> > > <!-- By adding rrs="true" (Record Route Sets), the route sets > --> > <!-- are saved and used for following messages sent. Useful to test > Content-Length: [len] > > v=0 > o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] > s=- > c=IN IP[media_ip_type] [media_ip] > t=0 0 > m=audio [media_port] RTP/AVP 0 > a=rtpmap:0 PCMU/8000 > > ]]> > </send> > > <recv response="100" > optional="true"> > </recv> > > <recv response="180" optional="true"> > </recv> > > <recv response="183" optional="true"> > </recv> > > <!-- By adding rrs="true" (Record Route Sets), the route sets > --> > <!-- are saved and used for following messages sent. Useful to test > --> > <!-- against stateful SIP proxies/B2BUAs. > --> > <recv response="200" rtd="true"> > </recv> > > <!-- Packet lost can be simulated in any send/recv message by > --> > <!-- by adding the 'lost = "10"'. Value can be [1-100] percent. > --> > <send> > <![CDATA[ > > ACK sip:[Kamailio]@[10.0.0.160]:[5060] SIP/2.0 > Via: SIP/2.0/[transport] > [10.0.0.210]:[local_port];branch=[branch] > From: sipp > <sip:sipp@[10.0.0.210]:[local_port]>;tag=[pid]SIPpTag00[call_number] > To: sut > <sip:[Kamailio]@[remote_ip]:[remote_port]>[peer_tag_param] > Call-ID: [call_id] > CSeq: 1 ACK > Contact: sip:sipp@[10.0.0.210]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Length: 0 > > <!-- against stateful SIP proxies/B2BUAs. > --> > <recv response="200" rtd="true"> > </recv> > > <!-- Packet lost can be simulated in any send/recv message by > --> > <!-- by adding the 'lost = "10"'. Value can be [1-100] percent. > --> > <send> > <![CDATA[ > > ACK sip:[Kamailio]@[10.0.0.160]:[5060] SIP/2.0 > Via: SIP/2.0/[transport] > [10.0.0.210]:[local_port];branch=[branch] > From: sipp > <sip:sipp@[10.0.0.210]:[local_port]>;tag=[pid]SIPpTag00[call_number] > To: sut > <sip:[Kamailio]@[remote_ip]:[remote_port]>[peer_tag_param] > Call-ID: [call_id] > CSeq: 1 ACK > Contact: sip:sipp@[10.0.0.210]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Length: 0 > > ]]> > </send> > > <!-- This delay can be customized by the -d command-line option > --> > <!-- or by adding a 'milliseconds = "value"' option here. > --> > <pause/> > > <!-- The 'crlf' option inserts a blank line in the statistics report. > --> > <send retrans="500"> > <![CDATA[ > > BYE sip:[Kamailio]@[10.0.0.160]:[5060] SIP/2.0 > Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch] > From: sipp > <sip:sipp@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number] > To: sut > <sip:[Kamailio]@[10.0.0.160]:[5060]>[peer_tag_param] > Call-ID: [call_id] > CSeq: 2 BYE > Contact: sip:sipp@[10.0.0.210]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Length: 0 > <!-- This delay can be customized by the -d command-line option > --> > <!-- or by adding a 'milliseconds = "value"' option here. > --> > <pause/> > > <!-- The 'crlf' option inserts a blank line in the statistics report. > --> > <send retrans="500"> > <![CDATA[ > > BYE sip:[Kamailio]@[10.0.0.160]:[5060] SIP/2.0 > Via: SIP/2.0/[transport] > [10.0.0.210]:[local_port];branch=[branch] > From: sipp > <sip:sipp@[local_ip]:[local_port]>;tag=[pid]SIPpTag00[call_number] > To: sut > <sip:[Kamailio]@[10.0.0.160]:[5060]>[peer_tag_param] > Call-ID: [call_id] > CSeq: 2 BYE > Contact: sip:sipp@[10.0.0.210]:[local_port] > Max-Forwards: 70 > Subject: Performance Test > Content-Length: 0 > > ]]> > </send> > > <recv response="200" crlf="true"> > </recv> > > <!-- definition of the response time repartition table (unit is ms) > --> > <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/> > > <!-- definition of the call length repartition table (unit is ms) > --> > <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/> > > </scenario> > > > > > -----Original Message----- > From: Rob Day <[email protected]> > To: Munzer,David J <[email protected]> > Cc: sipp-users <[email protected]> > Sent: Tue, Apr 8, 2014 4:43 pm > Subject: Re: [Sipp-users] Connecting phone system to SIPp > > David, > > No, there is no performance difference between a built-in scenario and > a scenario loaded from an XMl file - the built-in scenarios are > actually just XML files stored in the compiled binary. > > > You'll want to use a Unix text editor to edit the file - you may have > used one on Alpine Linux and already be familiar with it, but if not, > nano is probably a good choice (vim and emacs are more widely used, > but have a bigger learning curve). I'm not sure whether this is > installed by default on Cygwin, though - you may need to run the > installer again and choose it. > > Best, > Rob > > On 8 April 2014 20:54, Munzer,David J <[email protected]> wrote: >> Dear Rob, >> >> Will this limit the amount of call flow since my primary use of this >> software is for load testing. In addition, what command do i do to >> edit >> the xml file? Simply typing ./custom-uac.xml does not accomplish >> anything. >> >> >> Thankfully, >> David >> >> >> -----Original Message----- >> From: Rob Day <[email protected]> >> To: Munzer,David J <[email protected]> >> Cc: sipp-users <[email protected]> >> Sent: Tue, Apr 8, 2014 2:11 pm >> Subject: Re: [Sipp-users] Connecting phone system to SIPp >> >> Hi David, >> >> Do you know the SIP URIs you want to use? If so, you can simply >> create >> a custom scenario file (e.g. by running `sipp -sd uac > >> custom-uac.xml`), edit that custom scenario file to use the right SIP >> URIs in each message, then use that scenario rather than the built-in >> one (by using `-sf custom-uac.xml` instead of `-sn uac`). >> >> Best, >> Rob >> >> On 8 April 2014 19:44, Munzer,David J <[email protected]> wrote: >>> Dear Rob, >>> >>> The default scenario is making a call to the address/port of >>> Kamailio. >>> How do I include both the address of the SIP server that I making a >>> call >>> to and the address of one of the actual registered users? The >>> authorization page did not clarify that well. >>> >>> Thankfully, >>> David >>> >>> >>> -----Original Message----- >>> From: Rob Day <[email protected]> >>> To: Munzer,David J <[email protected]> >>> Cc: sipp-users <[email protected]> >>> Sent: Tue, Apr 8, 2014 3:04 am >>> Subject: Re: [Sipp-users] Connecting phone system to SIPp >>> >>> David, >>> >>> The default scenario makes a call to sip:[email protected]:5060, as >>> you can see in the error log - is this user configured and >>> registered >>> in Kamailio? (The -s option can change the "service" part, e.g. to a >>> phone number of your choosing.) >>> >>> It may be worth looking at what logs Kamailio has - those should >>> help >>> determine why it returns a 404. >>> >>> Best, >>> Rob >>> >>> On 8 April 2014 03:44, Munzer,David J <[email protected]> wrote: >>>> Hi Rob, >>>> >>>> I tried your suggestion of inputting the "./sipp -sn uac -i (My >>>> computer's IP address) (Kamailio's IP address) -trace_err". SIPP is >>>> recognizing the Kamailio server but it fails after sending the >>>> Invite >>>> 100 message. It gave this message, 2: Aborting call on unexpected >>>> message for Call-Id '[email protected]': while ex 'ecting '100' >>>> (index >>>> 1), received 'SIP/2.0 404 Not Found. I've considered that i may >>>> need >>>> to >>>> run on a different integrated scenario and that the error could >>>> come >>>> from Kamailio not authorizing the call due to me not providing >>>> further >>>> account information. However, if it was this case, I believe I >>>> would >>>> have received a 401 (Unauthorized) or a 407 (Proxy Authentication >>>> Required). If you have any ideas, please let me know. Below is the >>>> attempted call. >>>> >>>> Thankfully, David Munzer >>>> >>>> $ ./sipp -sn uac -i (My computer's IP address) (Kamailio's IP >>>> address) >>>> -trace_err >>>> Warning: open file limit > FD_SETSIZE; limiting max. # of open >>>> files >>>> to >>>> FD_SETSI >>>> ZE = 64 >>>> Resolving remote host '10.0.0.160'... Done. >>>> ------------------------------ Scenario Screen -------- [1-9]: >>>> Change >>>> Screen -- >>>> Call-rate(length) Port Total-time Total-calls Remote-host >>>> 10.0(0 ms)/1.000s 5060 10.60 s 106 >>>> 10.0.0.160:5060(UDP) >>>> >>>> 0 new calls during 0.000 s period 0 ms scheduler resolution >>>> 0 calls (limit 30) Peak was 1 calls, after 0 >>>> s >>>> 0 Running, 109 Paused, 0 Woken up >>>> 0 dead call msg (discarded) 0 out-of-call msg >>>> (discarded) >>>> 1 open sockets >>>> >>>> Messages Retrans Timeout >>>> Unexpected-Msg >>>> INVITE ----------> 106 0 0 >>>> 100 <---------- 0 0 0 106 >>>> 180 <---------- 0 0 0 0 >>>> 183 <---------- 0 0 0 0 >>>> 200 <---------- E-RTD1 0 0 0 0 >>>> ACK ----------> 0 0 >>>> Pause [ 0ms] 0 0 >>>> BYE ----------> 0 0 0 >>>> 200 <---------- 0 0 0 0 >>>> >>>> ------------------------------ Test Terminated >>>> -------------------------------- >>>> >>>> >>>> ----------------------------- Statistics Screen ------- [1-9]: >>>> Change >>>> Screen -- >>>> Start Time | 2014-04-05 02:20:42:441 >>>> 1396678842.441802 >>>> Last Reset Time | 2014-04-05 02:20:53:081 >>>> 1396678853.081802 >>>> Current Time | 2014-04-05 02:20:53:082 >>>> 1396678853.082802 >>>> >>>> >>>> >>>> -------------------------+---------------------------+-------------------------- >>>> Counter Name | Periodic value | Cumulative >>>> value >>>> >>>> >>>> >>>> -------------------------+---------------------------+-------------------------- >>>> Elapsed Time | 00:00:00:001 | >>>> 00:00:10:641 >>>> Call Rate | 0.000 cps | 9.961 >>>> cps >>>> >>>> >>>> >>>> -------------------------+---------------------------+-------------------------- >>>> Incoming call created | 0 | 0 >>>> OutGoing call created | 0 | 106 >>>> Total Call created | | 106 >>>> Current Call | 0 | >>>> >>>> >>>> >>>> -------------------------+---------------------------+-------------------------- >>>> Successful call | 0 | 0 >>>> Failed call | 0 | 106 >>>> >>>> >>>> >>>> -------------------------+---------------------------+-------------------------- >>>> Response Time 1 | 00:00:00:000 | >>>> 00:00:00:000 >>>> Call Length | 00:00:00:000 | >>>> 00:00:00:004 >>>> ------------------------------ Test Terminated >>>> -------------------------------- >>>> >>>> 2014-04-05 02:20:53:077 1396678853.077802: Aborting call on >>>> unexpected m >>>> essage for >>>> Call-Id >>>> '[email protected]': while expecting '100' (index 1), recei >>>> >>>> ved 'SIP/2.0 404 Not Found >>>> Via: SIP/2.0/UDP >>>> 10.0.0.210:5060;branch=z9hG4bK-3288-106-0;rport=5060 >>>> From: sipp <sip:[email protected]:5060>;tag=3288SIPpTag00106 >>>> To: sut >>>> >>>> >>>> >>>> <sip:[email protected]:5060>;tag=fc4b70b0517cb156b1fb39a76698f743-5763 >>>> Call-ID: [email protected] >>>> CSeq: 1 INVITE >>>> Server: kamailio (4.0.4 (i386/linux)) >>>> Content-Length: 0 >>>> >>>> '. >>>> sipp: There were more errors, see 'uac_3288_errors.log' file >>>> >>>> >>>> >>>> >>>> -----Original Message----- >>>> From: Rob Day <[email protected]> >>>> To: davidjmunzer <[email protected]> >>>> Cc: sipp-users <[email protected]> >>>> Sent: Wed, Apr 2, 2014 2:24 pm >>>> Subject: Re: [Sipp-users] Connecting phone system to SIPp >>>> >>>> David, >>>> >>>> I think that is the wrong syntax - if you have Kamailio's IP >>>> address >>>> after the -i, SIPp will try to bind that IP address (which it >>>> doesn't >>>> own) and fail. You need "./sipp -sn uac -i <your local network IP >>>> address> <Kamailio machine IP address>" >>>> >>>> Note that you need to use the IP address that can talk to your >>>> network >>>> (the one which Kamailio is on, probably 192.168.x.x), not 127.0.0.1 >>>> (which is localhost-only). >>>> >>>> Best, >>>> Rob >>>> >>>> On 2 April 2014 20:22, <[email protected]> wrote: >>>>> Hi Rob, >>>>> >>>>> I tried doing that by imputing ./sipp -sn uac 127.0.0.1 -i IP >>>>> dress, >>>>> It >>>>> responds with the error message, 1396509142.105827: Unable to bind >>>>> main >>>>> socket, errno = 125 (Cannot assign requested address). Is there an >>>>> issue >>>>> with my syntax, since I don't see why SIPP shouldn't be able to >>>>> access >>>>> Kamailio's IP address. >>>>> >>>>> Thankfully >>>>> David >>>>> >>>>> >>>>> >>>>> >>>>> -----Original Message----- >>>>> From: Rob Day <[email protected]> >>>>> To: davidjmunzer <[email protected]> >>>>> Cc: sipp-users <[email protected]> >>>>> Sent: Wed, Apr 2, 2014 12:54 pm >>>>> Subject: Re: [Sipp-users] Connecting phone system to SIPp >>>>> >>>>> Hi David, >>>>> >>>>> I think this may be because your Windows machine provides its IPv6 >>>>> or >>>>> its localhost address first, so SIPp uses that and is then unable >>>>> to >>>>> send messages to other IPv4 machines on the network. If you >>>>> explicitly >>>>> specify an IP address to bind to (with the -i option) you should >>>>> get >>>>> better results. >>>>> >>>>> Best, >>>>> Rob >>>>> >>>>> On 2 April 2014 19:18, <[email protected]> wrote: >>>>>> The SIP server that I am using is Kamailio. >>>>>> >>>>>> >>>>>> -----Original Message----- >>>>>> From: Rob Day <[email protected]> >>>>>> To: Munzer,David J <[email protected]> >>>>>> Cc: sipp-users <[email protected]> >>>>>> Sent: Wed, Mar 26, 2014 1:14 pm >>>>>> Subject: Re: [Sipp-users] Connecting phone system to SIPp >>>>>> >>>>>> Rob, >>>>>> >>>>>> By phone system, I do mean SIP server, specifically a combination >>>>>> of >>>>>> Kamailio and Freeswitch. When I try running the program using >>>>>> "./sipp -sn >>>>>> uac the ip address", It informs me that it's unable to send UDP >>>>>> message: >>>>>> Bad address. I've checked that the SIP server's address is >>>>>> correct >>>>>> by >>>>>> doing >>>>>> ip add on the SIP server to verify the IP address. Any ideas how >>>>>> to >>>>>> approach this issue? >>>>>> >>>>>> Thankfully, >>>>>> David >>>>>> >>>>>> David, >>>>>> >>>>>> When you say that you have a phone system running, do you mean >>>>>> that >>>>>> you have a SIP server (Kamailio/Clearwater/Asterisk) running, or >>>>>> something else? >>>>>> >>>>>> If you have a SIP server, it is probably listening on port 5060 >>>>>> (though you can check by running `netstat -lnp`) and you can just >>>>>> give >>>>>> the IP address of that machine as a command-line argument to >>>>>> SIPp. >>>>>> I'm >>>>>> assuming you want to use SIPp in UAC mode to test this phone >>>>>> system >>>>>> - >>>>>> if you want SIPp in UAS mode, handling calls sent to it by that >>>>>> SIP >>>>>> server, you'll need to check the documentation of that SIP server >>>>>> to >>>>>> find how to configure it. >>>>>> >>>>>> SIPp only communicates through the SIP protocol, so if by 'phone >>>>>> system' you don't mean a SIP server, you'll have to set one up to >>>>>> translate between SIP and whatever phone system you have. >>>>>> >>>>>> Best, >>>>>> Rob >>>>>> >>>>>> On 25 March 2014 19:14, Munzer,David J <[email protected]> wrote: >>>>>>> Hi, >>>>>>> >>>>>>> I have just finished installing SIPp and am not sure how to >>>>>>> connect >>>>>>> my >>>>>>> phone system to SIPp. My computer is running the program on >>>>>>> Windows >>>>>>> 7 >>>>>>> through Cygwin. My phone system runs on Alpine Linuz through a >>>>>>> USB. >>>>>>> Because of the two different operating systems, I need need to >>>>>>> connect >>>>>>> the two most likely through the IP address. However, I am unsure >>>>>>> how to >>>>>>> go about this. I would really appreciate help on this matter. >>>>>>> >>>>>>> Thankfully, >>>>>>> David >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------------------------------------------------------ >>>>>>> Learn Graph Databases - Download FREE O'Reilly Book >>>>>>> "Graph Databases" is the definitive new guide to graph databases >>>>>>> and >>>>>>> their >>>>>>> applications. Written by three acclaimed leaders in the field, >>>>>>> this first edition is now available. Download your free book >>>>>>> today! >>>>>>> http://p.sf.net/sfu/13534_NeoTech >>>>>>> _______________________________________________ >>>>>>> Sipp-users mailing list >>>>>>> [email protected] >>>>>>> https://lists.sourceforge.net/lists/listinfo/sipp-users >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------------------------------------------------------ >>>>>> >>>>>> _______________________________________________ >>>>>> Sipp-users mailing list >>>>>> [email protected] >>>>>> https://lists.sourceforge.net/lists/listinfo/sipp-users >>>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> >>>>> _______________________________________________ >>>>> Sipp-users mailing list >>>>> [email protected] >>>>> https://lists.sourceforge.net/lists/listinfo/sipp-users >>>>> >>>> >>>> >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Put Bad Developers to Shame >>>> Dominate Development with Jenkins Continuous Integration >>>> Continuously Automate Build, Test & Deployment >>>> Start a new project now. Try Jenkins in the cloud. >>>> http://p.sf.net/sfu/13600_Cloudbees >>>> _______________________________________________ >>>> Sipp-users mailing list >>>> [email protected] >>>> https://lists.sourceforge.net/lists/listinfo/sipp-users >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> Put Bad Developers to Shame >>> Dominate Development with Jenkins Continuous Integration >>> Continuously Automate Build, Test & Deployment >>> Start a new project now. Try Jenkins in the cloud. >>> http://p.sf.net/sfu/13600_Cloudbees >>> _______________________________________________ >>> Sipp-users mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/sipp-users >> >> >> ------------------------------------------------------------------------------ >> Put Bad Developers to Shame >> Dominate Development with Jenkins Continuous Integration >> Continuously Automate Build, Test & Deployment >> Start a new project now. Try Jenkins in the cloud. >> http://p.sf.net/sfu/13600_Cloudbees >> _______________________________________________ >> Sipp-users mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/sipp-users > > ------------------------------------------------------------------------------ > Put Bad Developers to Shame > Dominate Development with Jenkins Continuous Integration > Continuously Automate Build, Test & Deployment > Start a new project now. Try Jenkins in the cloud. > http://p.sf.net/sfu/13600_Cloudbees > _______________________________________________ > Sipp-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/sipp-users ------------------------------------------------------------------------------ Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test & Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees _______________________________________________ Sipp-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/sipp-users
