This document provides an overview of how to create an install profile in Drupal. It discusses the key files and folders needed, including .info, .profile, .install files to define the profile. It also covers make files needed to build the profile and dependencies, as well as example code for common tasks in install hooks like enabling modules, setting variables, populating menus and vocabularies.
This document outlines a presentation about the Features module in Drupal. It discusses what Features are, how they allow separating site configuration from content, and how Features 2.0 improved the user interface. Features allow encapsulating reusable functionality into modules and deploying configuration between environments. The presentation demonstrates creating and exporting Features, handling conflicts, and using the Features Override module to capture site-specific changes separately from the original Features.
The document discusses building a custom Linux kernel from source. It describes downloading kernel source code for Fedora or RHEL, installing dependencies and prepping the source code. It explains how to replace an existing custom kernel configuration, use make oldconfig to carry over existing options, and customize the kernel using make menuconfig, make gconfig or make config. Building the kernel produces files in directories under ~/rpmbuild after compiling.
This document provides an overview of Argus, an integration testing framework for Cloudbase-Init. It describes the key components of Argus including scenarios, recipes, tests, and introspection. It also explains how to configure Argus using an ini-style configuration file and run tests with Argus. The goal of Argus is to provide a more robust testing solution than a basic CI framework by enabling scenario-based, unittest-like testing of Cloudbase-Init across different clouds and configurations.
What's New in LuaRocks - Lua Workshop 2014 - Hisham MuhammadHisham Muhammad
Slides from my talk "What's new in LuaRocks"
presented at Lua Workshop 2014 in Moscow, Russia
with a brief presentation of LuaRocks,
how things compare now to last year's talk
and some proposals for new features and future directions.
-- Hisham Muhammad
The document provides instructions for installing Zenworks on a Linux server. It describes downloading and installing required software like SUSE Linux, Java, eDirectory, ConsoleOne, and Zenworks. It then provides step-by-step instructions for configuring eDirectory by creating a new tree, server, and administrator. Finally, it notes that Zenworks Server 7.2 can be installed by mounting the ISO, navigating to the folder, and running the installer.
MySQL is an open-source relational database management system that was created to be very fast, reliable and easy to use. It discusses how to install and configure MySQL, describes basic data management commands like creating databases and tables, inserting and querying data. The document also covers advantages of MySQL like being multi-threaded and some disadvantages like not supporting stored procedures initially.
This document outlines a presentation about the Features module in Drupal. It discusses what Features are, how they allow separating site configuration from content, and how Features 2.0 improved the user interface. Features allow encapsulating reusable functionality into modules and deploying configuration between environments. The presentation demonstrates creating and exporting Features, handling conflicts, and using the Features Override module to capture site-specific changes separately from the original Features.
The document discusses building a custom Linux kernel from source. It describes downloading kernel source code for Fedora or RHEL, installing dependencies and prepping the source code. It explains how to replace an existing custom kernel configuration, use make oldconfig to carry over existing options, and customize the kernel using make menuconfig, make gconfig or make config. Building the kernel produces files in directories under ~/rpmbuild after compiling.
This document provides an overview of Argus, an integration testing framework for Cloudbase-Init. It describes the key components of Argus including scenarios, recipes, tests, and introspection. It also explains how to configure Argus using an ini-style configuration file and run tests with Argus. The goal of Argus is to provide a more robust testing solution than a basic CI framework by enabling scenario-based, unittest-like testing of Cloudbase-Init across different clouds and configurations.
What's New in LuaRocks - Lua Workshop 2014 - Hisham MuhammadHisham Muhammad
Slides from my talk "What's new in LuaRocks"
presented at Lua Workshop 2014 in Moscow, Russia
with a brief presentation of LuaRocks,
how things compare now to last year's talk
and some proposals for new features and future directions.
-- Hisham Muhammad
The document provides instructions for installing Zenworks on a Linux server. It describes downloading and installing required software like SUSE Linux, Java, eDirectory, ConsoleOne, and Zenworks. It then provides step-by-step instructions for configuring eDirectory by creating a new tree, server, and administrator. Finally, it notes that Zenworks Server 7.2 can be installed by mounting the ISO, navigating to the folder, and running the installer.
MySQL is an open-source relational database management system that was created to be very fast, reliable and easy to use. It discusses how to install and configure MySQL, describes basic data management commands like creating databases and tables, inserting and querying data. The document also covers advantages of MySQL like being multi-threaded and some disadvantages like not supporting stored procedures initially.
The document discusses MySQL database backup and restore operations. It provides examples of standard and functional backup commands using mysqldump that can backup an entire database, specific tables, or all databases. It also lists various mysqldump options that can be used to customize backups, such as adding DROP statements, locking tables, skipping triggers or table creation information. Maintaining regular database backups is important for data protection and recovery.
The document outlines a series of laboratory exercises for configuring and using the Apache web server. It includes instructions for:
1) Setting up virtual machines and configuring networking to host Apache websites.
2) Installing and testing Apache, and familiarizing with its configuration file.
3) Configuring Apache as a secure reverse proxy and implementing basic security restrictions.
4) Adding user authentication, using .htaccess files, and virtual hosting with multiple sites.
5) Securing sites with SSL/TLS using self-signed and real certificates.
This document provides an overview and outline of a 12-lesson MariaDB training course. The lessons cover topics such as MariaDB installation and configuration, database and user administration, data manipulation, indexes, transactions, backups and replication. Each lesson includes brief descriptions of the concepts and tasks that will be covered.
1) The document provides instructions for installing Pentaho on CentOS, including creating a user and group, installing Java, MySQL, and Pentaho.
2) MySQL is installed using a YUM repository, then configured and secured.
3) Pentaho is extracted and MySQL databases are initialized with SQL scripts to integrate Pentaho and MySQL.
This homework assignment covers basic Unix and Perl skills. Students are instructed to:
1) Install Linux if they don't already have it and familiarize themselves with basic Unix commands through tutorials.
2) Learn important Unix text processing tools like grep, cut, sort, and pipes. Students are given example commands to run on E. coli genome data and explain what each command does.
3) Submit their responses to the tutorial questions and command explanations for grading.
This document describes how to set up a standby database using Oracle Data Guard. It involves configuring a primary database on one server and a standby database on a different server. The primary database is put in archive log mode and its datafiles and archived logs are copied to the standby server. The standby database is mounted using its control file and archived logs received from the primary. The standby database is recovered and can take over as the primary if needed, providing high availability and disaster recovery capabilities.
This document provides instructions for installing MapServer, PHP MapScript, and their dependencies on Linux. It describes downloading and compiling GD, PROJ.4, GEOS, GDAL, CURL, and PostGIS. It also explains recompiling PHP as a CGI to enable MapScript support. Finally, it details compiling MapServer and copying its executables, installing the PHP MapScript extension, and testing the MapServer and PHP MapScript installations.
Instalacion ambiente web am en linux red hatJanneth Parra
This document provides instructions for installing the Asset Manager Web client on Linux. It describes downloading and configuring the Java Development Kit (JDK), configuring environment variables, installing Tomcat, configuring the JVM settings for Tomcat, installing the Asset Manager Web client files, and editing configuration files.
This document discusses different methods for deploying configuration changes from a Drupal 8 development site to a live site. It covers a simple export/import method, using Git to track configuration file changes, and using Drush commands like drush config-import. The key aspects of each method are outlined, including exporting configurations, committing files to Git, pulling changes to the live site, and applying configurations. FAQs address installing Drush 7 for Drupal 8 and resolving errors from configuration synchronization.
[INSIGHT OUT 2011] B12 better my sql security and administration(ronald)Insight Technology, Inc.
The document discusses securing MySQL installations. It identifies common security issues like default lack of passwords, anonymous access, and insecure file permissions. The author then demonstrates how these issues could allow hackers to access databases, view users and hashed passwords, and even use the database to crack password hashes via brute force attacks. The document stresses the importance of securing MySQL using tools like mysql_secure_installation and proper operating system permissions.
In this presentation, you will find a Four step procedure for backup and restore SALSA to a secondary server with a different IP address. The presentation includes a video explaining step by step the procedure and the general description of this procedure including:
- First Step: Backup SALSA Files and Folders in Primary Server
- Second Step: Edit IP addresses or hostnames for the Secondary
Salsa Server
- Third Step: Transfer files to secondary server
- Fourth Step: Restore Files and Folders in Secondary Server,
respecting same file paths
This document discusses using Perl stored procedures with MariaDB. Key points include:
- Perl stored procedures are implemented as Perl modules that use DBD::mysql to access the database from within the MariaDB process. This makes them easier to debug than SQL stored routines.
- Examples are provided for simple "Hello World" procedures, handling errors, reading and returning data from queries, and modifying data by inserting rows.
- Perl stored procedures allow extending MariaDB's functionality by leveraging thousands of modules on CPAN. As an example, the document shows how a procedure could implement a basic monitoring server using HTTP::Daemon to expose server status data via a JSON API.
The Design Patterns book is more than just a collection of elegant solutions to common problems, it provides us with a vocabulary and framework for analyzing those problems. Discussing and applying design patterns helps shift the focus from the immediate problem to design. As the Puppet community converged on an idea of what "good" code looks like, Puppet design patterns began to emerge and design became more important. With more and more complex software being modeled in Puppet, those design patterns are more relevant than ever before. As the Puppet language takes on more general purpose and orchestration features, the need for good design patterns only grows with every release. This talk will discuss some of those design patterns and the problems that they solve.
The document discusses Puppet modules, including what they are, best practices for structuring modules, parameters, dependencies, testing modules, and documenting modules. It provides examples of module directory structure, class structure within modules, using parameters and dynamic data, module inheritance, ordering and anchoring classes, and the Modulefile.
This document summarizes a presentation on customizing and developing advanced features for eZ Find 2.2. It covers topics like speeding up development tasks, mapping fields and datatypes between Solr and eZ Find, indexing additional fields in Solr, and enhancing eZ Find using Solr syntax. The presentation contains 6 chapters, including introductions to eZ Find, techniques for development, fields and datatypes, indexing custom fields, and using Solr syntax to build complex search filters.
This document discusses setting up an Apache web server with virtual domains and dynamic CGI pages. It provides instructions for installing and configuring Apache from source, including a sample httpd.conf configuration file. It also describes a simple shell script-based web server for testing purposes.
The document discusses installing and configuring MySQL on Linux. It provides steps to install MySQL using RPM files, set passwords for security, test the installation, and configure applications to connect to the database. It also covers basic and advanced MySQL commands like CREATE TABLE, SELECT, JOIN, and more.
This document discusses how to unplug and plug pluggable databases in Oracle 12c. It shows how to:
1. Unplug two pluggable databases named "new" and "new2" into XML files.
2. Drop the databases while keeping the datafiles.
3. Check for compatibility before plugging the databases into another container.
4. Plug the databases back into the container using the XML files with the "nocopy" and "copy" clauses.
Drupal 8 aims to improve its ability to output data in formats like XML and JSON through web services and a RESTful interface. This will allow Drupal to better support delivering content to different devices in varying page layouts tailored for each device. The goal is to make Drupal equally capable of outputting non-HTML formats as it currently is with HTML pages.
UX Lessons from the USSR: The Trouble With ManifestosMyplanet Digital
This document discusses combining different approaches to product development, known as "process bricolage". It advocates embracing diverse methods from Agile, user-centered design (UCD), Lean, and other processes. The author argues against strict adherence to manifestos and for a moderate, pragmatic approach tailored to each project. Examples provided include incorporating UCD research and modeling into Agile sprints, using story maps and minimum viable products, and getting early input from clients.
Myplanet values innovation, humanity, transparency, focus, and excellence. It trusts an agile approach to governance, procedures, guidance, organizational structure, policies, and decision-making. The document discusses how Myplanet uses agile principles and practices like short sprints, frequent progress meetings, prioritizing work based on business value, and continually adapting based on feedback.
Drupal As A RESTful Backend For Client Side ApplicationsMyplanet Digital
This document discusses using Drupal as a RESTful backend for client-side applications. It introduces REST (REpresentational State Transfer) as an architectural style with five primary constraints: client-server, stateless, cacheable, layered system, and uniform interface. The document explains that client-side and mobile applications benefit from RESTful APIs as they can load data asynchronously after loading. It also describes Drupal's Services module for creating RESTful endpoints to integrate external applications and access API data. Specific HTTP methods for creating, retrieving, updating, and deleting resources are outlined. Finally, the document mentions improvements to REST support in Drupal 8 using Symfony components.
The document discusses MySQL database backup and restore operations. It provides examples of standard and functional backup commands using mysqldump that can backup an entire database, specific tables, or all databases. It also lists various mysqldump options that can be used to customize backups, such as adding DROP statements, locking tables, skipping triggers or table creation information. Maintaining regular database backups is important for data protection and recovery.
The document outlines a series of laboratory exercises for configuring and using the Apache web server. It includes instructions for:
1) Setting up virtual machines and configuring networking to host Apache websites.
2) Installing and testing Apache, and familiarizing with its configuration file.
3) Configuring Apache as a secure reverse proxy and implementing basic security restrictions.
4) Adding user authentication, using .htaccess files, and virtual hosting with multiple sites.
5) Securing sites with SSL/TLS using self-signed and real certificates.
This document provides an overview and outline of a 12-lesson MariaDB training course. The lessons cover topics such as MariaDB installation and configuration, database and user administration, data manipulation, indexes, transactions, backups and replication. Each lesson includes brief descriptions of the concepts and tasks that will be covered.
1) The document provides instructions for installing Pentaho on CentOS, including creating a user and group, installing Java, MySQL, and Pentaho.
2) MySQL is installed using a YUM repository, then configured and secured.
3) Pentaho is extracted and MySQL databases are initialized with SQL scripts to integrate Pentaho and MySQL.
This homework assignment covers basic Unix and Perl skills. Students are instructed to:
1) Install Linux if they don't already have it and familiarize themselves with basic Unix commands through tutorials.
2) Learn important Unix text processing tools like grep, cut, sort, and pipes. Students are given example commands to run on E. coli genome data and explain what each command does.
3) Submit their responses to the tutorial questions and command explanations for grading.
This document describes how to set up a standby database using Oracle Data Guard. It involves configuring a primary database on one server and a standby database on a different server. The primary database is put in archive log mode and its datafiles and archived logs are copied to the standby server. The standby database is mounted using its control file and archived logs received from the primary. The standby database is recovered and can take over as the primary if needed, providing high availability and disaster recovery capabilities.
This document provides instructions for installing MapServer, PHP MapScript, and their dependencies on Linux. It describes downloading and compiling GD, PROJ.4, GEOS, GDAL, CURL, and PostGIS. It also explains recompiling PHP as a CGI to enable MapScript support. Finally, it details compiling MapServer and copying its executables, installing the PHP MapScript extension, and testing the MapServer and PHP MapScript installations.
Instalacion ambiente web am en linux red hatJanneth Parra
This document provides instructions for installing the Asset Manager Web client on Linux. It describes downloading and configuring the Java Development Kit (JDK), configuring environment variables, installing Tomcat, configuring the JVM settings for Tomcat, installing the Asset Manager Web client files, and editing configuration files.
This document discusses different methods for deploying configuration changes from a Drupal 8 development site to a live site. It covers a simple export/import method, using Git to track configuration file changes, and using Drush commands like drush config-import. The key aspects of each method are outlined, including exporting configurations, committing files to Git, pulling changes to the live site, and applying configurations. FAQs address installing Drush 7 for Drupal 8 and resolving errors from configuration synchronization.
[INSIGHT OUT 2011] B12 better my sql security and administration(ronald)Insight Technology, Inc.
The document discusses securing MySQL installations. It identifies common security issues like default lack of passwords, anonymous access, and insecure file permissions. The author then demonstrates how these issues could allow hackers to access databases, view users and hashed passwords, and even use the database to crack password hashes via brute force attacks. The document stresses the importance of securing MySQL using tools like mysql_secure_installation and proper operating system permissions.
In this presentation, you will find a Four step procedure for backup and restore SALSA to a secondary server with a different IP address. The presentation includes a video explaining step by step the procedure and the general description of this procedure including:
- First Step: Backup SALSA Files and Folders in Primary Server
- Second Step: Edit IP addresses or hostnames for the Secondary
Salsa Server
- Third Step: Transfer files to secondary server
- Fourth Step: Restore Files and Folders in Secondary Server,
respecting same file paths
This document discusses using Perl stored procedures with MariaDB. Key points include:
- Perl stored procedures are implemented as Perl modules that use DBD::mysql to access the database from within the MariaDB process. This makes them easier to debug than SQL stored routines.
- Examples are provided for simple "Hello World" procedures, handling errors, reading and returning data from queries, and modifying data by inserting rows.
- Perl stored procedures allow extending MariaDB's functionality by leveraging thousands of modules on CPAN. As an example, the document shows how a procedure could implement a basic monitoring server using HTTP::Daemon to expose server status data via a JSON API.
The Design Patterns book is more than just a collection of elegant solutions to common problems, it provides us with a vocabulary and framework for analyzing those problems. Discussing and applying design patterns helps shift the focus from the immediate problem to design. As the Puppet community converged on an idea of what "good" code looks like, Puppet design patterns began to emerge and design became more important. With more and more complex software being modeled in Puppet, those design patterns are more relevant than ever before. As the Puppet language takes on more general purpose and orchestration features, the need for good design patterns only grows with every release. This talk will discuss some of those design patterns and the problems that they solve.
The document discusses Puppet modules, including what they are, best practices for structuring modules, parameters, dependencies, testing modules, and documenting modules. It provides examples of module directory structure, class structure within modules, using parameters and dynamic data, module inheritance, ordering and anchoring classes, and the Modulefile.
This document summarizes a presentation on customizing and developing advanced features for eZ Find 2.2. It covers topics like speeding up development tasks, mapping fields and datatypes between Solr and eZ Find, indexing additional fields in Solr, and enhancing eZ Find using Solr syntax. The presentation contains 6 chapters, including introductions to eZ Find, techniques for development, fields and datatypes, indexing custom fields, and using Solr syntax to build complex search filters.
This document discusses setting up an Apache web server with virtual domains and dynamic CGI pages. It provides instructions for installing and configuring Apache from source, including a sample httpd.conf configuration file. It also describes a simple shell script-based web server for testing purposes.
The document discusses installing and configuring MySQL on Linux. It provides steps to install MySQL using RPM files, set passwords for security, test the installation, and configure applications to connect to the database. It also covers basic and advanced MySQL commands like CREATE TABLE, SELECT, JOIN, and more.
This document discusses how to unplug and plug pluggable databases in Oracle 12c. It shows how to:
1. Unplug two pluggable databases named "new" and "new2" into XML files.
2. Drop the databases while keeping the datafiles.
3. Check for compatibility before plugging the databases into another container.
4. Plug the databases back into the container using the XML files with the "nocopy" and "copy" clauses.
Drupal 8 aims to improve its ability to output data in formats like XML and JSON through web services and a RESTful interface. This will allow Drupal to better support delivering content to different devices in varying page layouts tailored for each device. The goal is to make Drupal equally capable of outputting non-HTML formats as it currently is with HTML pages.
UX Lessons from the USSR: The Trouble With ManifestosMyplanet Digital
This document discusses combining different approaches to product development, known as "process bricolage". It advocates embracing diverse methods from Agile, user-centered design (UCD), Lean, and other processes. The author argues against strict adherence to manifestos and for a moderate, pragmatic approach tailored to each project. Examples provided include incorporating UCD research and modeling into Agile sprints, using story maps and minimum viable products, and getting early input from clients.
Myplanet values innovation, humanity, transparency, focus, and excellence. It trusts an agile approach to governance, procedures, guidance, organizational structure, policies, and decision-making. The document discusses how Myplanet uses agile principles and practices like short sprints, frequent progress meetings, prioritizing work based on business value, and continually adapting based on feedback.
Drupal As A RESTful Backend For Client Side ApplicationsMyplanet Digital
This document discusses using Drupal as a RESTful backend for client-side applications. It introduces REST (REpresentational State Transfer) as an architectural style with five primary constraints: client-server, stateless, cacheable, layered system, and uniform interface. The document explains that client-side and mobile applications benefit from RESTful APIs as they can load data asynchronously after loading. It also describes Drupal's Services module for creating RESTful endpoints to integrate external applications and access API data. Specific HTTP methods for creating, retrieving, updating, and deleting resources are outlined. Finally, the document mentions improvements to REST support in Drupal 8 using Symfony components.
Open Advocacy - Citizens Connected Goes Open SourceMyplanet Digital
The document invites citizens to a code sprint on December 7-8 in Toronto to work on open sourcing the Citizens Connected project and its Drupal modules for civic engagement and advocacy. It outlines the agenda which includes introducing Citizens Connected (CitCon), discussing its future as an open source project, comparing its Drupal modules, highlighting key features, and what remains to be done. Attendees are encouraged to come to the code sprint to contribute.
How to incrementally integrate QA in an Agile Development ProcessMyplanet Digital
This document outlines an incremental approach to QA that combines elements of QA, agile practices, and automation. It emphasizes valuing individuals, working software, customer collaboration, and response to change over rigid processes, documentation, contracts, and plans. The approach involves embedding QA specialists within cross-functional teams to collaboratively develop high-quality software through open discussion.
Automating Drupal Development: Makefiles, features and beyondNuvole
Automating Drupal Development discusses automating various aspects of Drupal development using Drush Make and installation profiles. Drush Make allows developers to define a Drupal site's codebase and dependencies in a makefile that can then retrieve all necessary code and libraries with a single command. Installation profiles extend this concept to automate site configuration and installation tasks. The document demonstrates how to create reusable templates for profiles and makefiles that can generate new customized sites through commands like Drush Bake.
Docker provides containerization capabilities while Ansible provides automation and configuration capabilities. Together they are useful DevOps tools. Docker allows building and sharing application environments while Ansible automates configuration and deployment. Key points covered include Docker concepts like images and containers, building images with Dockerfiles, and using Docker Compose to run multi-container apps. Ansible is described as a remote execution and configuration tool using YAML playbooks and roles to deploy applications. Their complementary nature makes them good DevOps partners.
This document provides instructions for installing Oracle 11g Release 2 on Fedora 14. It describes downloading and unpacking the required software, configuring kernel parameters and firewall settings, installing prerequisite packages, creating user groups and directories for the installation, and running the Oracle Universal Installer to complete the database installation. Post-installation steps involve restoring the original "/etc/redhat-release" file and setting the restart flag in "/etc/oratab".
This document provides instructions for installing Oracle 11g Release 2 on Fedora 14. It describes downloading and unpacking the required software, configuring kernel parameters and firewall settings, creating user groups and directories for the installation, and running the Oracle Universal Installer. Additional post-installation steps include restoring the original /etc/redhat-release file and setting the restart flag in /etc/oratab.
A bit of history, frustration-driven development, and why and how we started looking into Puppet at Opera Software. What we're doing, successes, pain points and what we're going to do with Puppet and Config Management next.
This document discusses Phing, an open source build tool for PHP projects that is based on Apache Ant. Phing uses XML build files to define targets and tasks for automating build processes like deployment, testing, documentation generation, and more. It provides features like file manipulation, code analysis, packaging, and integration with tools like Subversion, PHPUnit, and PhpDocumentor. The document provides examples of how to install, configure, and use Phing to implement automated build processes for PHP projects.
Installing oracle grid infrastructure and database 12c r1Voeurng Sovann
This document provides instructions for installing Oracle Grid Infrastructure and Oracle Database 12c R1 on a standalone Linux server. It describes how to:
1. Configure the server with required packages, users, groups, and directories for the Oracle software.
2. Install Oracle Grid Infrastructure 12c R1 using the Oracle Universal Installer and configure an ASM disk group and instance.
3. Install Oracle Database 12c R1 software, and use DBCA to create a database called "asmdb" that uses the ASM disk groups for storage and is accessible by the listener called "LISTENER_ASM".
9 steps to install and configure postgre sql from source on linuxchinkshady
The document outlines 9 steps to install and configure PostgreSQL from source on Linux:
1. Download the PostgreSQL source code
2. Install PostgreSQL by running configure, make, and make install commands
3. The configure command allows specifying various options like installation location, enabling/disabling features
4. After installation, PostgreSQL is configured and ready to use
The document provides instructions for installing Oracle API Gateway 11.12.1.0 on an Oracle Linux 5 server. It includes requirements for disk space, memory, ports and prerequisites for installing the Oracle software. Detailed steps are provided for creating a software user and group, configuring system files, installing the API Gateway software and creating an initial API Gateway instance.
The document provides instructions for configuring Red Hat Enterprise Linux 5 on VMware before installing Oracle 11gR2. This includes installing additional packages, modifying configuration files, creating users and filesystem directories, and preparing the system. Key steps are installing VMware tools, configuring network interfaces, formatting shared storage, installing the Oracle ASM library driver, and modifying shell profiles for the Oracle software owners. The goal is to prepare a system with a primary node "tom" and failover node "jerry" that is ready for an Oracle Grid 11gR2 installation.
Any developer who has worked in team will have to face the activity of setting up their local work environment to start contributing to the project. Whether you are working remotely or onsite, this kind of activity is often time consuming due to the personal configurations of your workstation. This "time wasting" is not predictable and even justifiable to the customer, that is the issue. I think the only way to fix that it's to find a reproducible process which takes the same time to be completed, indipendently by the operating system and configurations. This is why, starting from the last project I've been involved in, I started to lay the groundwork to build it using Docker, Config Split, Drupal Console and Drush.
My session is aimed at programmers and project managers looking for a way to bring new developers on board and make them operational in a given time. It will be a good starting point to discuss about that.
12c (12.1) Database installation on Solaris 11(11.2)K Kumar Guduru
1) The document provides steps to install Oracle Database 12c on Solaris 11.2. It includes installing prerequisite packages, configuring the system, creating the oracle user and groups, and running the Oracle installation.
2) Key steps are configuring the system hostname and IP address, editing configuration files like sshd_config, and installing prerequisite Oracle packages.
3) The Oracle software is extracted, Oracle user and groups are created, and permissions are set on the Oracle inventory and software directories.
4) The Oracle Database installer is run, including selecting a database configuration, providing passwords, and executing root scripts. Post-installation checks confirm the database and listeners are configured correctly.
The document discusses plugins, generators, and gems in Ruby on Rails. Plugins are used to extend Rails functionality and are installed into a Rails application. Generators are Rails commands that generate code or files within an application. Gems are packages for distributing and sharing libraries, and the document provides instructions for creating a gem using Bundler that includes a generator.
Bundling Packages and Deploying Applications with RPMAlexander Shopov
This document summarizes the steps to build an RPM package for a sample Java application called Counterbean using Tomcat. It describes preparing the build environment by installing necessary packages, creating a dedicated packager user, and initializing the RPM build tree. The document then walks through editing the spec file, adding dependencies, and building and installing the RPM package locally. Key aspects covered include file ownership, startup scripts, and switching the application's database.
These are the slides from a presentation I gave in 1999 at the Seattle Area System Administrators Guild monthly meeting. I haven't done this in a while, so I can't say how much of this is no longer valid, but it may prove useful to someone as a reference.
Apache Ant is a Java-based build tool similar to make. It uses XML configuration files and allows tasks to be executed based on targets. Key features include being cross-platform, extensible via Java, and using XML for configuration. Ant provides tasks to compile code, create archives, execute tests and more.
OpenNebula, the foreman and CentOS play nice, tooinovex GmbH
This document discusses setting up a private cloud using OpenNebula and the Foreman. It begins with an introduction and agenda. It then covers installing CentOS, setting up a local YUM repository using Pulp, installing the Foreman for bare metal provisioning, and using Puppet modules. It demonstrates deploying OpenNebula nodes using the Foreman and provides an overview of accessing the new cloud. It notes there are some rough edges to address but the modules are minor. It concludes by thanking the audience and providing contact information.
OpenStack project onboarding during OpenStack Summit Berlin 2018.
Onboarding projects are meant to attract new contributors and show them how the project works in terms of code and contributions.
Drupal cambs ansible for drupal april 2015Ryan Brown
This document discusses using Ansible to automate and simplify Drupal development and deployment. It provides an overview of Ansible and how it can be used to securely, repeatably, and quickly deploy Drupal sites. Specific tips are given for using Ansible to clone Drupal sites from git repositories, install dependencies, and configure settings through playbooks and roles. Examples show running playbooks to deploy a Drupal site to a remote server. Intensive Drupal farming techniques through tools that combine Ansible with Vagrant, Docker, and Drush are also mentioned.
Similar to Coding For Config: Install Profile Development Using Features (20)
Drupal With SMS And Telephony For Fun And ProfitMyplanet Digital
This document summarizes opportunities for integrating SMS and VoIP capabilities into Drupal websites. It discusses:
1) Popular SMS and VoIP use cases like direct marketing, event organization, and reducing infrastructure costs.
2) Benefits of integrating these services like accessing existing data, automation, and ability to store data.
3) The current state of Drupal 7 modules for SMS and VoIP integration, and opportunities to build custom modules using the Twilio API.
4) Examples of apps the author has built using a custom Twilio module, including a party planning app and a door buzzer app.
101 Exciting Tips To Get The Site You Need While Saving Time And Money (And G...Myplanet Digital
This document provides 101 tips for getting the website you need while saving time and money. Some key tips include having clearly defined objectives focused on business goals and ROI, being open to vendor ideas, prioritizing quickly, and demanding accountability and demos from vendors. It also discusses using agile principles like valuing working software over documentation and responding quickly to changes. The overall message is to plan effectively, communicate constantly with vendors, and focus on business needs and outcomes above all else.
This document discusses the importance of designing content to be adaptive and responsive. It recommends structuring content into chunks and using metadata to make it flexible across different devices and contexts. Content should be technology agnostic and work in any environment. Structured and meaningful content that is created once can be published everywhere, keeping organizations flexible to meet changing user needs.
This document contains a list of proposed new pages and content for the museum's website, organized by section. It includes proposed page URLs, existing content, new content to be added, estimated word counts, priorities, and notes. Sections include Exhibitions & Galleries, with subsections for specific galleries, as well as World Cultures galleries. Marketing will be involved in content development for some pages. The document provides an overview of planned new and updated content for the museum website.
Case Study: Drupal Enabled Mobile -Ontario Physical Health Education Associat...Myplanet Digital
The document discusses how Ophea, a nonprofit organization supporting children's health in Ontario, transitioned from a legacy system with multiple disconnected tools to a Drupal-based solution. It outlines challenges with the old system like silos of information and high maintenance costs. The new Drupal platform provides a unified CMS, ecommerce capabilities, and standardized program sites. Future plans include responsive mobile applications, social media integration, and content strategies to better organize and deliver information.
The Royal Conservatory provides music and arts education to over 5 million students nationwide. It is launching a new digital initiative called myDigitalRCM to create an online community for students, teachers, and patrons. This will include social networking, digital marketing, online learning, and distributing multimedia content. The Royal Conservatory is selecting Drupal as its new content management platform to power this digital transformation and achieve its vision of being interactive, relevant, and connecting its community.
This document summarizes BMO's implementation of a Drupal-based community platform to support its online initiatives. It discusses BMO's business needs, including a unified platform for communities, content sharing, and flexibility. It describes how Drupal met these needs with features like multisite setup and reusable functionality. The platform launched on time and facilitated new sites. BMO has observed the implementation and identified next steps like integrating new sites and mobile.
This document summarizes information about Acquia and Drupal adoption in government. It discusses that Acquia has 170 employees and supports Drupal through subscription services, hosting, and a partner program. It also notes that Drupal powers over 2% of websites and has been adopted by many governments around the world, including examples from Canada.
3. 11/16/12
Coding for Config
Install Profile Development Using Features
Friday, 16 November, 12
4. What is an
install
profile?
Friday, 16 November, 12
5. Distributions provide site features
and functions for a specific type of
site as a single download containing
Drupal core, contributed modules,
themes, and pre-defined
configuration.
Friday, 16 November, 12
6. They make it possible to quickly set
up a complex, use-specific site in
fewer steps than if installing and
configuring elements individually.
Friday, 16 November, 12
7. Distributions
vs.
Install Profiles
Friday, 16 November, 12
8. Distribution Requirements
• Only GPL-compatible libraries
• No cloned sandboxes
• No includes[] directive
• Only d.o modules and themes
• Must use drupal-org-
core.make
• Must define git branches
Friday, 16 November, 12
9. Install Profile Requirements
• Provide site features and
functions for a specific type
of site as a single download
Friday, 16 November, 12
27. name = Spark
description = Cutting-edge authoring experience improvements for
Drupal.
version = "7.x-1.0-alpha5"
core = 7.x
php = 5.3
; The distribution_name property is used in the installer and other
places as
; a label for the software being installed.
distribution_name = Spark
; Required modules (Core)
; Copy/pasted from standard.info
dependencies[] = block
dependencies[] = color
dependencies[] = comment
dependencies[] = contextual
dependencies[] = dblog
dependencies[] = field_ui
dependencies[] = file
dependencies[] = help
dependencies[] = image
dependencies[] = list
dependencies[] = menu
dependencies[] = number
Friday, 16 November, 12
28. <?php
/**
* @file
* Enables modules and site configuration for a standard site
installation.
*/
/**
* Implements hook_form_FORM_ID_alter() for install_configure_form().
*
* Allows the profile to alter the site configuration form.
*/
function spark_form_install_configure_form_alter(&$form, $form_state) {
// Pre-populate the site name with the server name.
$form['site_information']['site_name']['#default_value'] =
$_SERVER['SERVER_NAME'];
}
Friday, 16 November, 12
29. <?php
/**
* @file
* Install, update and uninstall functions for the spark install
profile.
*/
/**
* Implements hook_install().
*
* Perform actions to set up the site for this profile.
*
* @see system_install()
*/
function spark_install() {
...
}
Friday, 16 November, 12
30. <?php
/**
* @file
* Install, update and uninstall functions for the spark install
profile.
*/
/**
* Implements hook_install().
*
* Perform actions to set up the site for this profile.
*
* @see system_install()
*/
function spark_install() {
...
}
/**
* Implements hook_update_N().
* Description of hook update.
*/
function spark_update_10001(&$sandbox) {
...
}
Friday, 16 November, 12
31. <?php
/**
* @file
* Install, update and uninstall functions for the spark install
profile.
*/
/**
* Implements hook_install().
*
* Perform actions to set up the site for this profile.
*
* @see system_install()
*/
function spark_install() {
...
}
/**
* Implements hook_update_N().
* Description of hook update.
*/
function spark_update_10001(&$sandbox) {
...
}
Friday, 16 November, 12
33. Set Variables
/**
* Implements hook_update_N().
* Enables default and admin themes.
*/
function profilename_update_10001(&$sandbox) {
theme_enable(array('default_theme'));
variable_set('theme_default', 'default_theme');
variable_set('node_admin_theme', '1');
return t('The admin and default themes have been set.');
}
Friday, 16 November, 12
34. Populate Menus
/**
* Implements hook_update_N().
* Generate menu links
*/
function profilename_update_10002(&$sandbox) {
cache_clear_all();
//generate the menu links array
//for the header menu
$menu_links = array();
$menu_links['home'] = array(
'link_path' => '<front>',
'link_title' => t('Home'),
'weight' => 0,
);
$menu_links['about'] = array(
'link_path' => 'about-us',
'link_title' => t('About Us'),
'weight' => 0,
);
Friday, 16 November, 12
35. Populate Menus
//run menu_link_save on all of the items.
foreach ($menu_links as $menu_link) {
$menu_link['menu_name'] = 'menu-header';
$menu_link['module'] = 'menu';
menu_link_save($menu_link);
}
menu_cache_clear_all();
// Success!
return t('Menu links have been generated');
}
Friday, 16 November, 12
36. Set blocks to regions
/**
* Implements hook_update_N().
* Set copyright blocks to its region.
*/
function profilename_update_10003(&$sandbox) {
//pull in the theme name
global $theme_key;
// Set our block values
$values = array(
array(
'module' => 'custom_module',
'delta' => 'copyright',
'region' => 'footer',
'theme' => $theme_key,
'pages' => '',
'cache' => 8,
'status' => 1,
'weight' => 0,
),
);
Friday, 16 November, 12
37. Set blocks to regions
// If a db_entry for these blocks exists, delete it
foreach ($values as $position => $record) {
$result = db_select('block', 'b')
->fields('b')
->condition('module', $record['module'], '=')
->condition('delta', $record['delta'], '=')
->condition('theme', $theme_key, '=')
->execute()
->fetchAssoc();
if (!empty($result['bid'])) {
db_delete('block')
->condition('module', $record['module'], '=')
->condition('delta', $record['delta'], '=')
->condition('theme', $theme_key, '=')
->execute();
}
}
Friday, 16 November, 12
38. Set blocks to regions
// Insert into the database any block values that aren't already
present
foreach ($values as $record) {
$query = db_insert('block')->fields(array('module', 'delta',
'theme', 'status', 'weight', 'region', 'pages', 'cache'));
$query->values($record);
$insert_result = $query->execute();
}
// Success!
return t('Copyright blocks has been placed in the footer.');
}
Friday, 16 November, 12
40. Populate a Vocabulary
/**
* Implements hook_update_N().
* Create vocabulary and taxonomy terms
*/
function profilename_update_10004(&$sandbox) {
// Get the vocabulary
$vocab = taxonomy_vocabulary_machine_name_load('terms');
// If it's not created, do so (expected result)
if(empty($vocab)) {
$vocab = array(
'name' => 'Terms',
'machine_name' => 'terms',
'description' => 'A list of technical terms',
'hierarchy' => '0',
'module' => 'taxonomy',
'weight' => '0',
);
taxonomy_vocabulary_save((object)$vocab);
}
Friday, 16 November, 12
41. Populate a Vocabulary
// Confirm that we've created it
$vocab = taxonomy_vocabulary_machine_name_load('terms');
// If we haven't created it, stop
if (empty($vocab)) {
return t('Failed to create vocabulary.');
}
// Else if the "terms" vocabulary exists, populate it.
$terms = array(
'Drupal' => 'A content management system',
'Module' => 'A functional component of Drupal',
);
Friday, 16 November, 12
42. Populate a Vocabulary
// For each term defined in the above array, add it to the
"terms" vocabulary.
foreach ($terms as $term_name => $term_description) {
$term = new stdClass();
$term->vid = $vocab->vid;
$term->name = $term_name;
$term->description = $term_description;
taxonomy_term_save($term);
}
// Success!
return t('Created vocabulary and taxonomy terms');
}
Friday, 16 November, 12
44. build-spark.make
api = 2
core = 7.x
; Include the definition for how to build Drupal core directly,
including patches:
includes[] = drupal-org-core.make
; Download the Spark install profile and recursively build all its
dependencies:
projects[spark][type] = profile
projects[spark][download][type] = git
projects[spark][download][branch] = 7.x-1.x
Friday, 16 November, 12
45. build-spark.make - with GIT!
api = 2
core = 7.x
; Include the definition for how to build Drupal core directly,
including patches:
includes[] = drupal-org-core.make
; Download the Spark install profile and recursively build all its
dependencies:
projects[spark][type] = profile
projects[spark][download][git]= git
projects[spark][download][url] = http://git.drupal.org/project/spark.git
projects[spark][download][revision] = master
Friday, 16 November, 12
46. drupal-org-core.make
; A separate drupal-org-core.make file makes it so we can apply core
patches if we need to.
api = 2
core = 7.x
projects[drupal][type] = core
projects[drupal][version] = 7.15
; CORE PATCHES
; Hide the profiles under /profiles, so Spark is the only one. This
allows the installation to start at the Language selection screen,
bypassing a baffling and silly choice, especially for non-native
speakers.
projects[drupal][patch][1780598] = http://drupal.org/files/spark-
install-1780598-5.patch
; This requires a core bug fix to not show the profile selection page
when only one profile is visible.
projects[drupal][patch][1074108] = http://drupal.org/files/1074108-
skip-profile-16-7.x-do-not-test.patch
Friday, 16 November, 12
47. drupal-org.make
; This is a standard make file for packaging the distribution along
with any contributed modules/themes or external libraries. Some
examples are below.
; See http://drupal.org/node/159730 for more details.
api = 2
core = 7.x
; Contributed modules; standard.
projects[responsive_bartik][type] = theme
projects[responsive_bartik][version] = 1.x-dev
projects[responsive_bartik][subdir] = contrib
projects[ctools][type] = module
projects[ctools][version] = 1.2
projects[ctools][subdir] = contrib
; Fix incompatibilities with jQuery 1.7.
projects[ctools][patch][1494860] = "http://drupal.org/files/ctools-
dependent-js-broken-with-jquery-1.7-1494860-30.patch"
Friday, 16 November, 12
49. build-dev.sh
#!/bin/bash
# USAGE
# Run this script as given.
#
# $ bash build-dev.sh [ /fullpath/to/project.make ] [ /fullpath/to/
build/project ]
#
# (Default paths are for Vagrant VM.)
# Bail if non-zero exit code
set -e
PROJECT=profilename
# Set from args
BUILD_FILE="$1"
BUILD_DEST="$2"
Friday, 16 November, 12
50. build-dev.sh
# Drush make the site structure
drush make ${BUILD_FILE} ${BUILD_DEST}
--working-copy
--prepare-install
--yes
--no-gitinfofile
chmod 666 ${BUILD_DEST}/sites/default/settings.php
echo "Appending settings.php snippets..."
for f in ${BUILD_DEST}/profiles/${PROJECT}/tmp/snippets/*.settings.php
do
# Concatenate newline and snippet, then append to settings.php
echo "" | cat - $f | tee -a ${BUILD_DEST}/sites/default/settings.php
> /dev/null
done
chmod 444 ${BUILD_DEST}/sites/default/settings.php
cd ${BUILD_DEST}
drush cc all
Friday, 16 November, 12