Jérôme Renard wrote:
> Gaetano,
>
> Le 16/02/10 17:50, Gaetano Giunta a écrit :
>> Jérôme Renard wrote:
>>> Hi Gaetano,
>>>
>>
>> Hi JR, thanks for the quick reply.
>
> You are welcome.
>
> [...]
>> I just read the instructions, and there are a couple of questions I have
>> that are not answered in there:
>>
>> - I have a trunk and many branches. Shall the ant files be put in
>> /trunk/ant and /branches/2.0/ant
>> or in
>> /trunk/extension/ezoracle/ant and /branches/2.0/extension/ezoracle/ant
>>
>
> You can have an ant/<extension.name>.properties file for each of your branch
> wether it is trunk/ branches/ or anything else.
> Actually eZExtensionBuilder's build.xml file fetches the
> ${extension.name}.svn.url property so it is not a problem to create different
> builds for different branches.
>
> For example you could get the following directory structure :
>
> myextension
> ├── branches
> │ ├── 1.0
> │ │ └── ant
> │ │ └── myextension.properties
> │ └── 2.0
> │ └── ant
> │ └── myextension.properties
> └── trunk
> └── ant
> └── myextension.properties
>
> As long as you build from the correct directory, it will work :)
>
>> - how about a max and min supported versions for ezp? In the example below
>> you specify a single ezp version, but my branch 2.0 is compatible with ezp
>> 4.0 to 4.2
>> (and other branches have different compatibilities)
>
> Sounds like an interesting enhancement to me.
>
>>
>> - what is the usage of the create.tarball setting?
>
> Some extensions require a tarball like ezsi or ezxmlexport for example.
> If you set create.tarball to "yes" you will get a tarball once the build
> process is finished.
>
>>
>> - can you give more details about management of packages?
>>
>
> Note, here is how to get the list of available targets :
>
> 18:00 jer...@gimli~/work/www/php5/ezpublish/svn/trunk/extension/ezsi% ant -p
> -Dextension.name=ezsi
> Buildfile: build.xml
> eZExtensionBuilder build file
> Main targets:
>
> -build-dependency Builds a dependency
> -create-package-tarball Creates a tarball of an ezpackage.
> -fail-if-file-empty checks if a file exists but fails if it
> is empty
> all Build the extension and generate the
> tarball
> build Builds the extension
> build-dependencies Build dependent extensions
> check-gnu-files Checks for LICENSE and README files
To be documented: where are these supposed to be
> check-sql-files Checks if a schema.sql / cleandata.sql
> is available for supported databases
Same as above (btw, I thought we'df not settled up on a definitive dir for
those. good to see we have).
> clean Removes the entire build directory
> clean-all Removes the build/ and the dist/
> directory
> coding-standards-check Checks PHP code coding standard,
> requires PHPCodeSniffer
I see this has not been implemnted yet.
I think the best thing would be to integrate the sniffer defs from
http://svn.projects.ez.no/ezcodensiffer/
> create-package-tarballs Creates tarballs for ezpackages.
> dist Creates a tarball of the built extension
> dist-clean Removes the generated tarball
> eznetwork-certify Runs the certification script, requires
> the latest eZNetwork extension
> generate-documentation Generates the document of the
> extension, if created in RST
> generate-ezpackage-xml-definition Generates an XML definition for eZ
> Publish extension package types
> generate-md5sums Generates an MD5 file with all md5 sums
> of source code files
> help Shows this help
> init Prepares the extension to be built
> show-properties Shows the properties for this build file
> tests Launch unit tests if any
> update-ezinfo Updates ezinfo.php with correct version
> numbers
To document: how is the line to be updated found (regexp used)
> update-license-headers Update license headers in source code
> files
> update-package-xml Updates version numbers in package.xml
To do (could not find it yet in build.xml): add a target to update a variable
list of files setting the version number, ezp version number and license - see
as
an example of file to be patched:
http://svn.projects.ez.no/ezoracle/branches/2.0/extension/ezoracle/INSTALL
> Default target: help
>
> 18:00 jer...@gimli~/work/www/php5/ezpublish/svn/trunk/extension/ezsi% ant
> help -Dextension.name=ezsi
> Buildfile: build.xml
>
> help:
> [echo] Please run : ant -p to learn more about available targets
>
> show-properties:
> [echo] build.dir : build
> [echo] extension name : ezsi
>
> BUILD SUCCESSFUL
> Total time: 0 seconds
>
> Here is an example with create.tarball=yes take from ezsi:
>
> <!-- version properties -->
> ezsi.version.major = 1
> ezsi.version.minor = 2
> ezsi.version.release = 0
>
> ezsi.create.tarball=yes
>
> <!-- Subversion properties -->
> ezsi.svn.url = http://svn.projects.ez.no/ezsi/trunk/ezsi
>
>> ciao
>> Gaetano
>>
>>> Attached a screenshot that shows the extensions we build with hudson and
>>> ezextension builder.
>>
>> mmm.... no ezoracle in there... ;)
>>
>
> No, not yet, it already took us (oms and me) quite a while to port the 6000
> lines shell script
> we used to use to build eZ Publish to its Ant equivalent so we focused on
> MySQL.
>
Nice to see it shrank to 700 lines!
> 'Hope that helps.
>
--
Sdk-public mailing list
[email protected]
http://lists.ez.no/mailman/listinfo/sdk-public