質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.35%

Fuel PHP をアップグレードしたい

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 1,277
退会済みユーザー

退会済みユーザー

apache 上で fuelphp で動いている API サーバーがあるのですが
数年前に構築されたまま何もアップデートせずにつかっていて
セキュリティ要件のために定期的にアップデートすることになりました

とりあえず公式の
http://fuelphp.jp/docs/1.7/installation/upgrade.html
を読んでみたのですが具体的に何をすればいいのかよくわかりません

https://bm-server.net/2016/04/11/%E3%80%90fuelphp%E3%80%911-7-2%E3%81%8B%E3%82%891-8-0%E3%81%B8%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%82%A2%E3%83%83%E3%83%97%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F/
もよんでみたんですが
composer.json の中身がぜんぜん違っていてどう変更していいかわかりません

composer.json の中はこのようになっています

{
    "name": "fuel/fuel",
    "type": "metapackage",
    "description": "The FuelPHP framework",
    "keywords": ["framework"],
    "homepage": "http://fuelphp.com",
    "license": "MIT",
    "authors": [
        {
            "name": "FuelPHP Development Team",
            "email": "team@fuelphp.com"
        }
    ],
    "support": {
        "irc": "irc://irc.freenode.org/fuelphp",
        "forum": "http://fuelphp.com/forums"
    },
    "require": {
        "php": ">=5.3.3",
        "monolog/monolog": "1.6.*",
        "opauth/opauth": "0.4.*",
        "opauth/facebook": "dev-master",
        "opauth/google": "dev-master",
        "fuelphp/upload": "2.0.1",
        "bshaffer/oauth2-server-php": "v1.3",
        "fluent/logger": "v0.3.7",
        "dakatsuka/monolog-fluent-handler": "1.0.0",
        "phpunit/phpunit": "4.1.*",
        "aws/aws-sdk-php": "2.*",
        "elasticsearch/elasticsearch": "~5.0"
    },
    "suggest": {
        "mustache/mustache": "Allow Mustache templating with the Parser package",
        "smarty/smarty": "Allow Smarty templating with the Parser package",
        "twig/twig": "Allow Twig templating with the Parser package",
        "mthaml/mthaml": "Allow Haml templating with Twig supports with the Parser package"
    },
    "config": {
        "vendor-dir": "fuel/vendor"
    },
    "scripts": {
        "post-install-cmd": [
            "php oil r install"
        ]
    },
    "minimum-stability": "dev"
}

そもそも fuel のフォルダがリポジトリ内にあるので
サーバー側で何か実行してもデプロイで上書きされることになる気がするんですが
リポジトリ内でアップデートを行ってそれをデプロイするという形になるのでしょうか

https://qiita.com/watarinrin78/items/0a87da153d2d0ae3472f
を参考にして 1.8.zip をダウンロードしてきてリポジトリ内の

- fuel/core
- fuel/packages
- fuel/app/bootstrap.php
- public/.htaccess
- public/index.php


をおきかえてデプロイしてみたんですが

php oil r install
というコマンドで
Fatal error: Uncaught Error: Class 'Autoloader' not found in
というエラーが出てしまいます

エラー内容で検索すると
https://runble1.com/fuelphp-18-update/
が1件だけヒットしたんですが oil をアップデートするとしかかかれていません

どうやってアップデートすればいいんでしょうか

方針があってるかどうかもよくわからないので
助けていただけるとありがたいです
よろしくおねがいします

追記

oil -v とうつと 

Error - Package 'pushnotifications' could not be found at 'PKGPATH/pushnotifications/' in COREPATH/classes/package.php
というエラーが出ます

package/pushnotifications というディレクトリがあったんですが
アップグレードのときに package ごと消してしまいました
git 管理してるので戻そうと思えば戻せるんですが
これはどうやってインストールしなおせばいいのでしょうか

fuel は本当に何もわかってなくて
コントローラー内の PHP のロジックを変更したことしかなくて
フレームワークの部分は全くわからないので初心者マークをつけておきます

新しくインストールしなおせばそのあたりのことを覚えていけると思ってるんですが
そのインストール作業をどうやればいいかという最初の部分でつまずいています

他のソフトウェアであれば yum apt-get pip なり
ソースから configure make なりでアップデートできるものなんですが

サブディレクトリ内に別の git リポジトリにするとか
zip をダウンロードしてサブディレクトリだけまるまるおきかえるとか
アップデートの仕方がすごくわかりにいので困ってます 

oil, composer の必要性とかもわかりにくくて
なぜパッケージ管理ツールが複数必要なんでしょうか

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • 退会済みユーザー

    退会済みユーザー

    2019/07/29 15:28 編集

    基本的に社内固有事項は社内できいてくれていいけど
    それ以外は自分で調べて解決するということになっています

    もちろんそれでできれなければ自分には無理ですといえば
    他の人と担当が変わるだけのことですが
    自己学習もかねてアップデートの仕方を覚えたいので
    回答がいただけるならそれにこしたことはないかなと思った次第です

    社内の fuel が特殊なインストールのされ方なのであれば社内できくしかないのですが
    「fuelPHP のアップデート方法」というのは極めて一般的な内容だと思うのですが
    質問サイトで質問するべきではない内容ということですか?

    キャンセル

  • mikkame

    2019/07/29 16:03 編集

    過去の質問も拝見しましたが、業務内容を、そのまま質問して遂行されているように感じましたので
    なぜ会社の人が手伝ってくれないのだろうか、会社の人に聞いた方が早くない?と思っただけです。
    また、一般的な内容と感じるのであればググるだけで十分、マニュアルを読むだけで十分ではないでしょうか?
    composer.jsonはfuelのもので、それ以外はないですか?
    取り敢えずfuelを新しいもので上書きして必要なpackageを入れ直せば動きそうですが
    どの方法でfuelをインストールし、どのような方法でデプロイされているか不明瞭なため、これだけの情報で回答するのは無理かと思います

    キャンセル

  • 退会済みユーザー

    2019/07/30 00:20

    複数のユーザーから「やってほしいことだけを記載した丸投げの質問」という意見がありました
    「質問を編集する」ボタンから編集を行い、調査したこと・試したことを記入していただくと、回答が得られやすくなります。

回答 1

check解決した方法

0

teratail できくべき内容ではないということみたいなので
別の質問サイト化フォーラムで質問してみることにします
質問は閉じさせてさせていただきます
申し訳ありません

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.35%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る