CodeIgniter Forums

Full Version: How to test, deploy and administer CI app
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I'm close to finishing an early version of my web app, and would like to get it online.

I am, however, very confused as to what to do from here.

I'd like automated testing and deployment (I think). I'd also prefer as little server administration as possible.

The tools I use are GitHub and PhpStorm.

I'm willing to pay for the necessary services.
(01-10-2015, 01:56 PM)yhoiseth Wrote: [ -> ]I'm close to finishing an early version of my web app, and would like to get it online.

I am, however, very confused as to what to do from here.

I'd like automated testing and deployment (I think). I'd also prefer as little server administration as possible.

The tools I use are GitHub and PhpStorm.

I'm willing to pay for the necessary services.

One of the nice things about CodeIgniter is you can usually just FTP it up to your server and it works.  You will most likely have to use your web host's control panel to create a database and update your database configuration.  And you might have to create/alter an .htaccess file.

This is one reason for CodeIgniter's popularity:  Most (all?) other PHP frameworks require you to have a shell account and/or permissions to install software on the server.  CodeIgniter works with almost all standard hosting accounts.

That's the simple answer.  I'll let others express opinions on automated testing and deployment.
Yes with CodeIgniter you can certainly FTP everything up and it should work. That said some of the things you are talking about need additional services setup.

For example for "automated testing and deployment" you are talking about CI or Continuous Integration (not CodeIgniter).

In order to use that you would need to meet the following criteria.

1. You have wrote some form of unit testing (PHPunit being the most popular - shoot for 80% code coverage or higher)
2. You use some form of source code management (GitHub or BitBucket)
3. You setup a Continuous Integration Server (Jenkins or Hudson)

Then you setup your CI server to check out the GIT repro every time there is a change. It will then run all the Unit Tests. Finally it will automatically deploy your code to your testing server (or production if your adventurous) if they all pass. QA then can run there tests as needed on the test server etc... and you can deploy once your sprint or what ever is over.

Of course if any tests fail it will notify the person that made the commit. (ie. what ever you did broken some test... fix it!) and it won't update testing server etc...


Of course at a minimum you could test locally then once everything passes you can push to GIT switch over to the test server and pull down your repro updates. Finally pull again down to production.

Test and production "could" be on the same server to save money both pointing to 2 different database servers then you "could" test.example.com and www.example.com. Or you could skip the test server and go from you sandbox to production. That's 1 step above FTPing but at least using GIT you can rollback if anything goes wrong! FTPing is usually all or nothing (unless you have a really smart FTP program) GIT only downloads what changed and is "almost" instant.

How many are on your team?
Thanks for the tips. Will try using Azure's GitHub integration, and we'll see how it goes. No automated testing just yet.
(01-16-2015, 05:28 AM)yhoiseth Wrote: [ -> ]Thanks for the tips. Will try using Azure's GitHub integration, and we'll see how it goes. No automated testing just yet.

Hello Please i have been having an error "The resource you are looking for has been removed, had its name changed, or is temporarily unavailable." while trying to integrate my codeigniter 3 app on azure please can you help me is there anything i need to know about the session and database class.