OpenShift - обновление Python и установка PIP в приложении Rails

Я создал свое приложение Rails на OpenShift. Он использует Python и пакет, установленный из PIP. Как мне перейти на более новую версию Python (в настоящее время это 2.6)?

Видимые картриджи:

user@debian:~$ rhc cartridges
jbossas-7                JBoss Application Server 7              web
jboss-dv-6.1.0 (!)       JBoss Data Virtualization 6             web
jbosseap-6 (*)           JBoss Enterprise Application Platform 6 web
jboss-unified-push-1 (!) JBoss Unified Push Server 1.0.0.Beta1   web
jboss-unified-push-2 (!) JBoss Unified Push Server 1.0.0.Beta2   web
jenkins-1                Jenkins Server                          web
nodejs-0.10              Node.js 0.10                            web
perl-5.10                Perl 5.10                               web
php-5.3                  PHP 5.3                                 web
php-5.4                  PHP 5.4                                 web
zend-6.1                 PHP 5.4 with Zend Server 6.1            web
python-2.6               Python 2.6                              web
python-2.7               Python 2.7                              web
python-3.3               Python 3.3                              web
ruby-1.8                 Ruby 1.8                                web
ruby-1.9                 Ruby 1.9                                web
ruby-2.0                 Ruby 2.0                                web
jbossews-1.0             Tomcat 6 (JBoss EWS 1.0)                web
jbossews-2.0             Tomcat 7 (JBoss EWS 2.0)                web
jboss-vertx-2.1 (!)      Vert.x 2.1                              web
jboss-wildfly-8 (!)      WildFly Application Server 8.2.1.Final  web
jboss-wildfly-9 (!)      WildFly Application Server 9            web
diy-0.1                  Do-It-Yourself 0.1                      web
cron-1.4                 Cron 1.4                                addon
jenkins-client-1         Jenkins Client                          addon
mongodb-2.4              MongoDB 2.4                             addon
mysql-5.1                MySQL 5.1                               addon
mysql-5.5                MySQL 5.5                               addon
phpmyadmin-4             phpMyAdmin 4.0                          addon
postgresql-8.4           PostgreSQL 8.4                          addon
postgresql-9.2           PostgreSQL 9.2                          addon
rockmongo-1.1            RockMongo 1.1                           addon
switchyard-0             SwitchYard 0.8.0                        addon
haproxy-1.4              Web Load Balancer                       addon

Note: Web cartridges can only be added to new applications.

(*) denotes a cartridge with additional usage costs.

(!) denotes a cartridge that will not receive automatic security updates.

А потом пытаюсь установить более новый Python...

user@debian:~$ rhc add-cartridge --app myappname python-3.3
Short Name       Full name
==========       =========
cron-1.4         Cron 1.4
jenkins-client-1 Jenkins Client
mongodb-2.4      MongoDB 2.4
mysql-5.1        MySQL 5.1
mysql-5.5        MySQL 5.5
phpmyadmin-4     phpMyAdmin 4.0
postgresql-8.4   PostgreSQL 8.4
postgresql-9.2   PostgreSQL 9.2
rockmongo-1.1    RockMongo 1.1
switchyard-0     SwitchYard 0.8.0
haproxy-1.4      Web Load Balancer

There are no cartridges that match 'python-3.3'.

Если возможно установить более новую версию Python, как мне установить PIP?

2 ответа

Решение

Я скопировал библиотеку в OpenShift, включил ее в путь включения и выполнил ее с помощью py2.6! Задача решена!

Картриджей с именем python нет, потому что при попытке добавить картридж к существующему приложению будут показаны только совместимые картриджи. Как отмечено rhc cartridges команда:

Note: Web cartridges can only be added to *new* applications.

Лучший способ обновить версию Python - это создать новое приложение и импортировать код из старого приложения.

1) Создать новое приложение

$ rhc app create py33 python-3.3

2) Получите URL-адрес git и добавьте его как удаленное в ваше приложение.

$ cd old_python_app
$ git remote add py33 ssh://py33-giturl
$ git push py33 master -f 
# Force push as the repo comes with default config files

Что касается pipПредустановленный с openshift.

$ rhc ssh py33
$ pip --version
  pip 7.1.2 from /var/lib/openshift/.../python/virtenv/venv/lib/python3.3/site-packages (python 3.3)
Другие вопросы по тегам