Compare commits
4
Commits
2.0.3-rc.2
..
2.0.3
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2fb0d6d89 | ||
|
|
617a3f50eb | ||
|
|
c666b50dd8 | ||
|
|
34fb57fa81 |
@@ -19,12 +19,6 @@
|
||||
RewriteRule "Giornale/all/.*" "oldArticleRedirect.php" [L,QSA]
|
||||
|
||||
</Directory>
|
||||
|
||||
<IfModule xsendfile_module>
|
||||
XSendFile on
|
||||
XSendFilePath "/tmp/xsend"
|
||||
</IfModule>
|
||||
|
||||
|
||||
</VirtualHost>
|
||||
|
||||
|
||||
@@ -12,5 +12,8 @@ mkdir -p "/tmp/${DDNINJA_AUTHOR}/${DDNINJA_BUILDNAME}"
|
||||
chown -R www-data:www-data "/tmp/${DDNINJA_AUTHOR}/${DDNINJA_BUILDNAME}"
|
||||
chown -R www-data:www-data /var/log/${DDNINJA_AUTHOR}
|
||||
|
||||
mkdir -p "/home/${DDNINJA_AUTHOR}/storage/${DDNINJA_BUILDNAME}/media/"
|
||||
chown -R www-data:www-data "/home/${DDNINJA_AUTHOR}/storage/${DDNINJA_BUILDNAME}/media/"
|
||||
|
||||
asdphp-entrypoint & wait
|
||||
exit $?
|
||||
|
||||
@@ -19,9 +19,7 @@ class BannerHelper {
|
||||
}
|
||||
|
||||
public static function printBanner($position = BannerModel::POSITION_HEAD){
|
||||
$category = BannerModel::GENERAL_CATEGORY;
|
||||
|
||||
$cur = self::getPlaceholderId();
|
||||
$cur = self::getPlaceholderId();
|
||||
|
||||
if (!array_key_exists($position, self::$positions)) {
|
||||
self::$positions[$position] = [];
|
||||
|
||||
@@ -13,13 +13,18 @@ class BannerModel extends HasMediaModel{
|
||||
const POSITION_HEAD = 1;
|
||||
const POSITION_BODY = 2;
|
||||
const POSITION_LONG = 3;
|
||||
|
||||
const POSITION_TOP = 4;
|
||||
const POSITION_BOTTOM = 5;
|
||||
|
||||
const GENERAL_CATEGORY = 0;
|
||||
|
||||
public static $BANNER_POSITIONS = array(
|
||||
self::POSITION_HEAD=>array("label"=>"Testata"),
|
||||
self::POSITION_BODY=>array("label"=>"Corpo"),
|
||||
self::POSITION_LONG=>array("label"=>"Corpo Lungo")
|
||||
self::POSITION_LONG=>array("label"=>"Corpo Lungo"),
|
||||
self::POSITION_TOP=>array("label"=>"Inizio pagina"),
|
||||
self::POSITION_BOTTOM=>array("label"=>"Fine pagina")
|
||||
);
|
||||
|
||||
public function __construct($saveableObject = null){
|
||||
|
||||
@@ -19,9 +19,7 @@ class GUIHandler {
|
||||
private static $onLoadEvents = array();
|
||||
|
||||
public static function generateHtmlHeaders(array $data = array(), $admin = false){
|
||||
if ($admin) {
|
||||
ASDSessionHandler::getSessionId();
|
||||
}
|
||||
ASDSessionHandler::getSessionId();
|
||||
$conf = GlobalVariables::get("config");
|
||||
|
||||
$title = $conf->info->projectName;
|
||||
@@ -222,7 +220,10 @@ class GUIHandler {
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bottomBar" style="height:40px;width:1000px;"></div>
|
||||
<div class="bottomBar" style="width:1000px;"></div>
|
||||
<div class="banner subheadBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_TOP);?>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
@@ -329,6 +330,9 @@ class GUIHandler {
|
||||
self::setCookieSeen();
|
||||
}
|
||||
?>
|
||||
<div class="banner footerBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_BOTTOM);?>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="footerCategory">
|
||||
<a href="index.php">Home</a>
|
||||
|
||||
@@ -343,12 +343,6 @@ class GUIHandlerMobile {
|
||||
public static function generateFooter(){
|
||||
if (!self::hasSeenCookieMessage()){
|
||||
?>
|
||||
<!-- <div class="cookieAdvice"> -->
|
||||
<!-- <div>Questo sito utilizza cookie tecnici per offrirti una migliore esperienza di navigazione sul sito.</div> -->
|
||||
<!-- <div>Navigando su questo sito accetti l'utilizzo dei cookie.</div><br/> -->
|
||||
<!-- <a class="closeAdvice">Chiudi</a> -->
|
||||
<!-- <br/><br/> -->
|
||||
<!-- </div> -->
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
$('.closeAdvice').click(function(){
|
||||
@@ -363,6 +357,9 @@ class GUIHandlerMobile {
|
||||
self::setCookieSeen();
|
||||
}
|
||||
?>
|
||||
<div class="banner footerBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_BOTTOM);?>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="footerButton" style="text-align:center;">
|
||||
<a href="#">
|
||||
|
||||
@@ -91,9 +91,17 @@ try{
|
||||
<span class="label">Posizione:</span>
|
||||
<select name="position">
|
||||
<option disabled selected style="display:none;">Seleziona Posizione</option>
|
||||
<option <?php echo $banner->position==BannerModel::POSITION_HEAD?"selected":"";?> value="<?php echo BannerModel::POSITION_HEAD;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_HEAD]["label"];?></option>
|
||||
<option <?php echo $banner->position==BannerModel::POSITION_BODY?"selected":"";?> value="<?php echo BannerModel::POSITION_BODY;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_BODY]["label"];?></option>
|
||||
<option <?php echo $banner->position==BannerModel::POSITION_LONG?"selected":"";?> value="<?php echo BannerModel::POSITION_LONG;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_LONG]["label"];?></option>
|
||||
<?php
|
||||
foreach (BannerModel::$BANNER_POSITIONS as $type => $data) {
|
||||
printf(
|
||||
'<option %s value="%s">%s</option>',
|
||||
$banner->position==$type ? "selected" : "",
|
||||
$type,
|
||||
$data['label']
|
||||
);
|
||||
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
</div>
|
||||
<div>
|
||||
|
||||
@@ -74,6 +74,8 @@ HTMLHelper::generateAdminHead();
|
||||
<li>Banner testata:<b>180x60px</b></li>
|
||||
<li>Banner corpo:<b>160x120px</b></li>
|
||||
<li>Banner lungo:<b>160x240px</b></li>
|
||||
<li>Banner Inizio pagina:<b>1000x120px</b></li>
|
||||
<li>Banner Fine pagina:<b>1000x200px</b></li>
|
||||
</ul>
|
||||
Tale restizione è consigliata anche per i banner di tipo <i>HTML5</i>.
|
||||
</p>
|
||||
|
||||
@@ -23,18 +23,6 @@ try{
|
||||
$newMedia = null;
|
||||
$mediaTypeSaved = PostHandler::get("mediaType");
|
||||
|
||||
// if(!is_null($bannerId) && strcmp($bannerId, "")!=0){
|
||||
// $edit = true;
|
||||
// $banner = GlobalVariables::get("dao")->getFirst("BannerModel",array("id"=>$bannerId));
|
||||
// $newMedias = DaoMediaHandler::getMedias($banner);
|
||||
// if(sizeof($newMedias)>0){
|
||||
// $newMedia = reset($newMedias);
|
||||
// }
|
||||
// if($banner->hasProperty("type") && !is_null($banner->type)){
|
||||
// $mediaTypeSaved = $banner->type;
|
||||
// }
|
||||
// }
|
||||
|
||||
if(array_key_exists("action", $_POST) && strcmp(PostHandler::get("action"), "save")==0){
|
||||
$mediaType = PostHandler::get("mediaType");
|
||||
if (!is_null($mediaType) && strcmp($mediaType, "")!=0){
|
||||
@@ -98,69 +86,7 @@ try{
|
||||
else {
|
||||
throw new GUIException("Selezionare il tipo di file multimediale da utilizzare");
|
||||
}
|
||||
|
||||
|
||||
// if(is_null($bannerId) || strcmp($bannerId, "")==0){
|
||||
// $banner->customer = PostHandler::get("customer");
|
||||
// $banner->type = PostHandler::get("mediaType");
|
||||
// $banner->start = new Mongodate(strtotime(PostHandler::get("dateStart")));
|
||||
// $banner->end = new Mongodate(strtotime(PostHandler::get("dateEnd")));
|
||||
// GlobalVariables::get("dao")->save($banner);
|
||||
// $bannerId = $banner->id;
|
||||
// }
|
||||
|
||||
// if(!is_null($bannerId) && strcmp($bannerId, "")!=0){
|
||||
// $edit=true;
|
||||
// // $banner = GlobalVariables::get("dao")->getFirst("BannerModel",array("id"=>$bannerId));
|
||||
// $file = "";
|
||||
|
||||
// $mediaType = PostHandler::get("mediaType");
|
||||
// $banner->type=$mediaType;
|
||||
// if(strcmp($mediaType, "")!=0){
|
||||
// $tmp = array();
|
||||
// $saveable = new stdClass();
|
||||
// $saveable->mediaType = $mediaType;
|
||||
// if(strcmp($mediaType,MediaModel::TYPE_HTML5)==0){
|
||||
// $saveable->code = PostHandler::get("data");
|
||||
// $media = DaoMediaHandler::createNewTextBasedMedia($saveable);
|
||||
// }
|
||||
// else if(strcmp($mediaType,MediaModel::TYPE_IMAGE)==0){
|
||||
// $file = $_FILES['data']['tmp_name'];
|
||||
// $info = pathinfo($_FILES['data']['name']);
|
||||
// // $file = PostHandler::get("data");
|
||||
// $media = DaoMediaHandler::createNewFileBasedMedia($saveable, $file,$info["extension"]);
|
||||
// }
|
||||
|
||||
// if(!is_null($media)){
|
||||
// GlobalVariables::get("dao")->save($media);
|
||||
// DaoMediaHandler::addMedia($banner, $media);
|
||||
// GlobalVariables::get("dao")->save($banner);
|
||||
// }
|
||||
// else{
|
||||
// throw new Exception("Cannot save a null media in the news with id '".$bannerId."'");
|
||||
// }
|
||||
// }
|
||||
// else{
|
||||
// throw new Exception("Invalid mediaType '".$mediaType."' while trying to add the media in editBanner");
|
||||
// }
|
||||
|
||||
// GUIHandler::redirect("admin/listBanner.php");
|
||||
// }
|
||||
}
|
||||
// else if(array_key_exists("action", $_POST) && strcmp(PostHandler::get("action"), "delete")==0){
|
||||
// if(!is_null($bannerId) && strcmp($bannerId, "")!=0){
|
||||
// $banner = GlobalVariables::get("dao")->getFirst("BannerModel",array("id"=>$bannerId));
|
||||
// $medias = DaoMediaHandler::getMedias($banner);
|
||||
// // $media = reset($medias);
|
||||
// // $media = GlobalVariables::get("dao")->getFirst("MediaModel",array("id"=>$mediaId));
|
||||
// foreach ($medias as $media){
|
||||
// DaoMediaHandler::deleteMedia($banner, $media);
|
||||
// $banner->type = null;
|
||||
// GlobalVariables::get("dao")->save($banner);
|
||||
// }
|
||||
// }
|
||||
// GUIHandler::redirect("admin/listBanner.php");
|
||||
// }
|
||||
$formFile = '<input type="hidden" name="MAX_FILE_SIZE" value="52428800" />
|
||||
<span class="label">Seleziona file</span><input type="file" name="data" />';
|
||||
if($edit && !is_null($newMedia)){
|
||||
@@ -173,6 +99,7 @@ try{
|
||||
}catch(GUIException $ex){
|
||||
$error = $ex->getMessage();
|
||||
}catch (Exception $exec){
|
||||
var_dump($exec);
|
||||
LoggingFacilityManager::getLogger("gui")->log(LoggingFacility::$LEVEL_ERROR, $exec->getMessage());
|
||||
$error = "Si è verificato un errore inaspettato durante l'esecuzione della pagina. Se l'errore persiste contattare il supporto tecnico.";
|
||||
}
|
||||
@@ -196,6 +123,8 @@ try{
|
||||
<option value="<?php echo BannerModel::POSITION_HEAD;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_HEAD]["label"];?></option>
|
||||
<option value="<?php echo BannerModel::POSITION_BODY;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_BODY]["label"];?></option>
|
||||
<option value="<?php echo BannerModel::POSITION_LONG;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_LONG]["label"];?></option>
|
||||
<option value="<?php echo BannerModel::POSITION_TOP;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_TOP]["label"];?></option>
|
||||
<option value="<?php echo BannerModel::POSITION_BOTTOM;?>"><?php echo BannerModel::$BANNER_POSITIONS[BannerModel::POSITION_BOTTOM]["label"];?></option>
|
||||
</select>
|
||||
</div>
|
||||
<div>
|
||||
|
||||
@@ -12,17 +12,11 @@ if (array_key_exists("id",$_GET)) {
|
||||
if (!is_null($pdfModel)){
|
||||
$localFilePath = GlobalVariables::get("config")->paths->media."/".$id.".".$pdfModel->extension;
|
||||
if (SFSManager::fileExists($localFilePath)){
|
||||
$exposedFilePath = GlobalVariables::get("config")->paths->xsendfile."/".$id.".".$pdfModel->extension;
|
||||
if (!SFSManager::fileExists($exposedFilePath)){
|
||||
if (!SFSManager::fileExists(GlobalVariables::get("config")->paths->xsendfile) || !is_dir(GlobalVariables::get("config")->paths->xsendfile)){
|
||||
SystemController::mkdir(GlobalVariables::get("config")->paths->xsendfile);
|
||||
}
|
||||
SystemController::shellExec("ln",'-nFs "'.$localFilePath.'" "'.$exposedFilePath.'"');
|
||||
}
|
||||
header('X-Sendfile: '.$exposedFilePath.'');
|
||||
|
||||
header("Content-type: application/octet-stream");
|
||||
header('Content-Disposition: attachment; filename="' . basename($exposedFilePath) . '"');
|
||||
header('Content-Disposition: attachment; filename="' . $id.".".$pdfModel->extension . '"');
|
||||
|
||||
echo file_get_contents($localFilePath);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -152,8 +152,9 @@ try {
|
||||
</div>
|
||||
<div class="archivioResults">
|
||||
<div style="text-align:center;">
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="banner subheadBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_TOP);?>
|
||||
</div>
|
||||
</div>
|
||||
<?php if(!$post){
|
||||
?>
|
||||
|
||||
@@ -136,8 +136,9 @@ GUIHandlerMobile::generateHtmlHeaders(array("additionalMetadata"=>$additionalHea
|
||||
</script>
|
||||
<div class="newsContainer">
|
||||
<div style="text-align:center;">
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="banner subheadBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_TOP);?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="articoloCategoryName" style="color:white;background-color:<?php echo NotiziaModel::$NOTIZIE_CATEGORY[$articolo->category]["color"] ?>;">
|
||||
<span itemprop="articleSection"><?php echo strtoupper(NotiziaModel::$NOTIZIE_CATEGORY[$articolo->category]["label"]);?></span>
|
||||
|
||||
@@ -65,9 +65,10 @@ try{
|
||||
GUIHandlerMobile::generateHeadPublic();
|
||||
GUIHandlerMobile::generateMenu();?>
|
||||
<div class="categorySummaryContainer">
|
||||
<div style="text-align:center;">
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div style="text-align:center;">
|
||||
<div class="banner subheadBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_TOP);?>
|
||||
</div>
|
||||
</div>
|
||||
<?php $i=0;
|
||||
if(sizeof($notizie)>0){
|
||||
|
||||
@@ -144,8 +144,9 @@ catch (Exception $ex){
|
||||
?>
|
||||
<div class="newsBarMobile">
|
||||
<div style="text-align:center;">
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="banner subheadBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_TOP);?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="newsContainer" >
|
||||
<?php $i=0; foreach($ansaNews as $ansa){
|
||||
|
||||
@@ -88,8 +88,9 @@ try {
|
||||
GUIHandlerMobile::generateMenu();?>
|
||||
<div class="searchResultsContainer">
|
||||
<div style="text-align:center;">
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="middleBanner mediaContent"><?php BannerHelper::printBanner(BannerModel::POSITION_HEAD);?></div>
|
||||
<div class="banner subheadBanner mediaContent">
|
||||
<?php BannerHelper::printBanner(BannerModel::POSITION_TOP);?>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
if ($found){
|
||||
|
||||
@@ -22,11 +22,14 @@ body{font-family:lato, arial;}
|
||||
.socialBar > a > div{display:inline-block;width:22px;height:22px;background-repeat:no-repeat;}
|
||||
|
||||
.middleBar{position:relative;height:138px;border:solid #d6d6d6 1px;border-top:0px;border-left:0px;border-right:0px;}
|
||||
.banner img{ width: 100%; height: 100%; overflow: hidden; }
|
||||
.leftBanner{position:absolute;top:45px;left:10px;}
|
||||
.logo{display:inline-block;width:50%;text-align:center;margin:12px 250px;}
|
||||
.rightBanner{position:absolute;top:45px;right:10px;}
|
||||
.topBanner{width:180px;height:60px;}
|
||||
.topBanner > *{max-widht:100%;max-height:100%;}
|
||||
.topBanner > * { max-width:100%; max-height:100%; }
|
||||
.subheadBanner { width:1000px; height:120px; }
|
||||
.footerBanner { width:1000px; height:200px; }
|
||||
|
||||
|
||||
.menuContainer{position:relative;}
|
||||
@@ -312,23 +315,23 @@ display: inline-block;
|
||||
.meteo div span{font-weight:bold;}
|
||||
|
||||
.middleRightBanner{width:210px;overflow: hidden;height: 157px;margin: 5px 0;}
|
||||
.middleRightBanner img{width:100%; heigth:100%;}
|
||||
.middleRightBanner img{width:100%; height:100%;}
|
||||
.middleRightLongBanner img{height:100%;width:100%;}
|
||||
.middleRightLongBanner{height:314px; width:210px;overflow: hidden;margin: 5px 0;}
|
||||
|
||||
.reader > .lastContainer, .lastContainer{/* max-height:120px */;display:block;padding:5px;border-bottom:dotted #C1B4B4 1px;cursor:pointer;text-decoration:none;color:black;}
|
||||
.reader > .lastContainer, .lastContainer{ display:block;padding:5px;border-bottom:dotted #C1B4B4 1px;cursor:pointer;text-decoration:none;color:black;}
|
||||
.reader > .lastContainer:last-child, .lastContainer:last-child {border-bottom: none;}
|
||||
.reader > .lastData, .lastData{font-size:12px;}
|
||||
.reader > .lastTitle, .lastTitle{font-size:12px;font-weight:bold;}
|
||||
.reader > .lastContinua, .lastContinua{text-align:right; font-size:12px;font-weight:bold;padding-bottom:5px;}
|
||||
.reader > .lastContinua a, .lastContinua a{color:#64bff0;}
|
||||
|
||||
.gossipContainer{/* max-height:165px */;/* margin-top:5px */;margin-bottom:5px;border-bottom:dotted #C1B4B4 1px;cursor:pointer;overflow:hidden;text-decoration:none;color:black;}
|
||||
.gossipContainer{margin-bottom:5px;border-bottom:dotted #C1B4B4 1px;cursor:pointer;overflow:hidden;text-decoration:none;color:black;}
|
||||
.gossipContainer#gossip_2{border-bottom:none;}
|
||||
.gossipTitle{margin-bottom:5px;font-weight:bold;font-size:20px;}
|
||||
.gossipSubtitle{margin-bottom:5px;color:#64bff0;font-weight:bold;font-size:15px;}
|
||||
|
||||
.animaliContainer,.viaggiContainer{/* max-height:165px; *//* margin-top:5px */;display:block;margin-bottom:5px;text-decoration:none;color:black;}
|
||||
.animaliContainer,.viaggiContainer{display:block;margin-bottom:5px;text-decoration:none;color:black;}
|
||||
.animaliContainer > .culturaMainMedia,.viaggiContainer > .culturaMainMedia{text-align:left;}
|
||||
.animaliTitle,.viaggiTitle{cursor:pointer;margin-bottom:5px;font-weight:bold;font-size:17px;}
|
||||
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
# Use a PHP runtime as a parent image
|
||||
FROM §FRAMEWORK_REPOSITORY§/§FRAMEWORK_IMAGE§:§FRAMEWORK_VERSION§-§FRAMEWORK_TYPE§
|
||||
|
||||
# Set the working directory to /app
|
||||
WORKDIR /§PROJECT_BUILDNAME§
|
||||
|
||||
# Install GD (required by mpdf)
|
||||
RUN apt-get update && \
|
||||
apt-get install -yq --no-install-recommends libpng-dev zlib1g-dev && \
|
||||
apt-get clean && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
RUN docker-php-ext-install gd
|
||||
|
||||
# Install Memcached
|
||||
RUN apt-get update && apt-get install -y libmemcached-dev \
|
||||
&& pecl install memcached-3.1.5 \
|
||||
&& docker-php-ext-enable memcached
|
||||
|
||||
# Copy the current directory contents into the container at /app
|
||||
COPY ./app /§PROJECT_BUILDNAME§
|
||||
|
||||
COPY ./version /§PROJECT_BUILDNAME§
|
||||
|
||||
COPY ./config /§PROJECT_BUILDNAME§
|
||||
|
||||
COPY ./install /§PROJECT_BUILDNAME§
|
||||
|
||||
RUN chmod 744 /§PROJECT_BUILDNAME§/install
|
||||
|
||||
RUN /§PROJECT_BUILDNAME§/install
|
||||
|
||||
|
||||
ENTRYPOINT ["§PROJECT_BUILDNAME§-entrypoint"]
|
||||
|
||||
# Make port 80 available to the world outside this container
|
||||
EXPOSE 80
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
# Use a PHP runtime as a parent image
|
||||
FROM §FRAMEWORK_REPOSITORY§/§FRAMEWORK_IMAGE§:§FRAMEWORK_VERSION§-§FRAMEWORK_TYPE§
|
||||
|
||||
# Set the working directory to /app
|
||||
WORKDIR /§PROJECT_BUILDNAME§
|
||||
|
||||
# Install XDebug
|
||||
RUN pecl install xdebug | tail -n 1 | awk -F"\"" '{print $2}' > /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN echo "\n\n[XDebug]\nxdebug.mode=debug\nxdebug.start_with_request=yes\nxdebug.client_host = §DEBUG_REMOTE_IP§\nxdebug.client_port = §DEBUG_REMOTE_PORT§\n" >> /usr/local/etc/php/conf.d/xdebug.ini
|
||||
|
||||
# Install Memcached
|
||||
RUN apt-get update && apt-get install -y libmemcached-dev zlib1g-dev \
|
||||
&& pecl install memcached-3.1.5 \
|
||||
&& docker-php-ext-enable memcached
|
||||
|
||||
# Install SOAP
|
||||
RUN docker-php-ext-install soap
|
||||
|
||||
# Copy the current directory contents into the container at /app
|
||||
COPY ./app /§PROJECT_BUILDNAME§
|
||||
|
||||
COPY ./version /§PROJECT_BUILDNAME§
|
||||
|
||||
COPY ./config /§PROJECT_BUILDNAME§
|
||||
|
||||
COPY ./install /§PROJECT_BUILDNAME§
|
||||
|
||||
RUN chmod 744 /§PROJECT_BUILDNAME§/install
|
||||
|
||||
RUN /§PROJECT_BUILDNAME§/install
|
||||
|
||||
ENTRYPOINT ["§PROJECT_BUILDNAME§-entrypoint"]
|
||||
|
||||
# Make port 80 available to the world outside this container
|
||||
EXPOSE 80
|
||||
@@ -0,0 +1,15 @@
|
||||
FROM §FRAMEWORK_REPOSITORY§/§FRAMEWORK_IMAGE§:§FRAMEWORK_VERSION§-§FRAMEWORK_TYPE§-unit
|
||||
|
||||
WORKDIR /§PROJECT_BUILDNAME§
|
||||
COPY ./app /§PROJECT_BUILDNAME§
|
||||
COPY ./test /test§PROJECT_BUILDNAME§
|
||||
COPY ./version /§PROJECT_BUILDNAME§
|
||||
COPY ./config /§PROJECT_BUILDNAME§
|
||||
COPY ./test/install /§PROJECT_BUILDNAME§
|
||||
|
||||
RUN chmod 744 /§PROJECT_BUILDNAME§/install
|
||||
|
||||
RUN /§PROJECT_BUILDNAME§/install
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/phpunit"]
|
||||
CMD ["--help"]
|
||||
@@ -1,2 +1,3 @@
|
||||
DDNINJA_PROJECTNAME=FDN2
|
||||
DDNINJA_BUILDNAME=fdn2
|
||||
DDNINJA_AUTHOR=ddninja
|
||||
@@ -37,4 +37,4 @@ db.notizia.ensureIndex({"about.author": "text",sottotitolo: "text",testo: "text"
|
||||
|
||||
db.article_stats.ensureIndex({ "notizia": 1, "time": 1, "deleted": 1 }, {name: "quick_upsert"})
|
||||
db.banner_stats.ensureIndex({ "banner": 1, "time": 1, "deleted": 1 }, {name: "quick_upsert"})
|
||||
db.pageview_stats.ensureIndex({ "deleted": 1, "time": 1, "page": 1 }, {name: "quick_upsert"})
|
||||
db.pageview_stats.ensureIndex({ "time": 1, "page": 1, "deleted": 1, }, {name: "quick_upsert"})
|
||||
|
||||
+8
-4
@@ -15,9 +15,10 @@ source "$DIR/../config"
|
||||
source "$DIR/libs.sh"
|
||||
|
||||
usage() {
|
||||
echo "Usage: $0 [-h] [-v] [-t: version] [image type, see below] " 1>&2;
|
||||
echo "Usage: $0 [-h] [-v] [-t: version] -I <webserver|worker> [image type, see below] " 1>&2;
|
||||
echo "This script builds framework docker images, the following options are available:" 1>&2;
|
||||
echo " -h: This message" 1>&2;
|
||||
echo " -I: Image (webserver or worker)" 1>&2;
|
||||
echo " Image types (at least one, otherwise the script does nothing)" 1>&2;
|
||||
echo " -a: All, same as ub" 1>&2;
|
||||
echo " -u: Unit" 1>&2;
|
||||
@@ -33,9 +34,13 @@ UNIT_MODE=0
|
||||
DEBUG_MODE=0
|
||||
|
||||
TAG="local"
|
||||
TYPE="webserver"
|
||||
|
||||
while getopts "t:hvaubd" o; do
|
||||
while getopts "I:t:hvaubd" o; do
|
||||
case "${o}" in
|
||||
I)
|
||||
TYPE="${OPTARG}"
|
||||
;;
|
||||
b)
|
||||
BASE_MODE=1
|
||||
;;
|
||||
@@ -66,7 +71,6 @@ while getopts "t:hvaubd" o; do
|
||||
done
|
||||
|
||||
|
||||
|
||||
cd ".."
|
||||
|
||||
# STANDARD MODE
|
||||
@@ -78,7 +82,7 @@ if [[ $BASE_MODE -gt 0 ]]; then
|
||||
OPTS+="v"
|
||||
fi
|
||||
|
||||
$DIR/generateDockerfile.sh -$OPTS -o $DOCKERFILE
|
||||
$DIR/generateDockerfile.sh -I "${TYPE}" -$OPTS -o $DOCKERFILE
|
||||
|
||||
msg "Building project image $TAG"
|
||||
docker build -t $PROJECT_REPOSITORY/$PROJECT_GROUP/$PROJECT_BUILDNAME:$TAG -f $DOCKERFILE .
|
||||
|
||||
+8
-4
@@ -142,12 +142,16 @@ if [[ $PUBLISH_MODE -eq 1 ]]; then
|
||||
BUILDOPT+="v"
|
||||
VERBOPT="-v"
|
||||
fi
|
||||
msg "running ./build.sh -$BUILDOPT -t $TAG"
|
||||
./build.sh -$BUILDOPT -t $TAG
|
||||
|
||||
./run-unit.sh $VERBOPT -t $TAG
|
||||
# WEBSERVER
|
||||
msg "running ./build.sh -I webserver -$BUILDOPT -t $TAG-webserver"
|
||||
./build.sh -I webserver -$BUILDOPT -t "$TAG-webserver"
|
||||
|
||||
./publish.sh $VERBOPT -t $TAG
|
||||
./run-unit.sh $VERBOPT -t "$TAG-webserver"
|
||||
|
||||
./publish.sh $VERBOPT -t "$TAG-webserver"
|
||||
|
||||
|
||||
|
||||
if [[ $TAG_IMPLICIT -ne 1 ]]; then
|
||||
git tag $TAG
|
||||
|
||||
@@ -22,6 +22,7 @@ usage() {
|
||||
echo " -d: Debug" 1>&2;
|
||||
echo " -u: Unit" 1>&2;
|
||||
echo " -b: Base" 1>&2;
|
||||
echo " -I: Image (webserver or worker)" 1>&2;
|
||||
echo " -i: Config Input File" 1>&2;
|
||||
echo " -o: Output file" 1>&2;
|
||||
echo " -v: Verbose" 1>&2;
|
||||
@@ -36,8 +37,13 @@ DEBUG_MODE=0
|
||||
UNIT_MODE=0
|
||||
BASE_MODE=0
|
||||
|
||||
while getopts "i:o:hvdub" o; do
|
||||
TYPE="webserver"
|
||||
|
||||
while getopts "i:o:I:hvdub" o; do
|
||||
case "${o}" in
|
||||
I)
|
||||
TYPE="${OPTARG}"
|
||||
;;
|
||||
d)
|
||||
DEBUG_MODE=1
|
||||
SELECTED_MODES+=1
|
||||
@@ -88,12 +94,12 @@ if [[ $OUTFILE == "" ]]; then
|
||||
usage
|
||||
fi
|
||||
|
||||
STARTING_FILE="../cicd/dockerfiles/build.dockerfile"
|
||||
STARTING_FILE="../cicd/dockerfiles/${TYPE}/build.dockerfile"
|
||||
if [[ $DEBUG_MODE -eq 1 ]]; then
|
||||
STARTING_FILE="../cicd/dockerfiles/debug.dockerfile"
|
||||
STARTING_FILE="../cicd/dockerfiles/${TYPE}/debug.dockerfile"
|
||||
fi
|
||||
if [[ $UNIT_MODE -eq 1 ]]; then
|
||||
STARTING_FILE="../cicd/dockerfiles/test.dockerfile"
|
||||
STARTING_FILE="../cicd/dockerfiles/${TYPE}/test.dockerfile"
|
||||
fi
|
||||
msg "Using source file $STARTING_FILE"
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
git pull --quiet
|
||||
git tag -l --sort=-version:refname | head -n 1
|
||||
Reference in New Issue
Block a user