Mac + Microsoft Remote DesktopでWindows Server 2012のスタートスクリーンを表示する

キー配列によるのかもしれないが、Windows Server側がUSキーボード設定だと次のいずれかで表示できる。

  1. マウスを画面左下に持っていくと「スタート」というのがポップアップするので、それをクリック
  2. Macのcommandボタンを押す

わからなかったのでメモ。

Update environment operation is complete, but with errors.

eb deploy でこんなエラーが出て、デプロイできず。

Update environment operation is complete, but with errors. For more information, see troubleshooting documentation.

一つ前のバージョンをデプロイするも同じ。
awsebcliをupgradeするもダメ。
アプリケーション数の制限にも引っかかってないし。

結局、eb環境を作成し直して再度デプロイしたらうまくいった。

php artisanで"class not found"と出たら

いつも忘れるのでメモ。

$ php artisan db:seed --class=HogeSeeder


  [ReflectionException]
  Class HogeSeeder does not exist

Migrations & Seeding - Laravel - The PHP Framework For Web Artisans にあるとおり、このコマンドを実行

$ composer dump-autoload
Generating autoload files

通った。

$ php artisan db:seed --class= HogeSeeder
$

Jeetでコケた話

対処

2016.06.29時点だと、6.1.2に戻せば解消します。

github.com

エラー時のメッセージ

npm run gulp build で下記エラーが。

   13| @import 'node_modules/jeet/stylus/jeet'
---------------^
   14| @import 'node_modules/iconfonts/stylesheets/font-awesome'
   15| fa-font()
   16|

failed to locate @import file node_modules/jeet/stylus/jeet.styl

上記Issueを見て、6.1.2に戻す。

$ npm install jeet@6.1.2

ansible-galaxyでバージョン指定するとエラーになった

$ ansible --version
ansible 1.9.4
  configured module search path = None

Ansibleのroleをバージョン指定で使いたかったので、
YAMLファイルに記載して管理しようと。
で、次のように書いて実行するとエラーに・・orz

# requirement.yml(error-ver.)
- src: retr0h.logrotate
   version: 2.0

 

$ ansible-galaxy install -r requirements.yml -p roles --force
- executing: git clone https://github.com/retr0h/ansible-logrotate ansible-logrotate
Traceback (most recent call last):
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 959, in <module>
    main()
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 953, in main
    fn(args, options, parser)
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 796, in execute_install
    tmp_file = scm_archive_role(role_scm, role_src, role.get("version"), role.get("name"))
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 376, in scm_archive_role
    print "- executing: %s" % " ".join(archive_cmd)
TypeError: sequence item 4: expected string, float found

文字列のところが数値だからダメなんだそうで。
次のように書けば通った。
数値として認識されたんだなー

# requirement.yml(ok-ver.)
- src: retr0h.logrotate
   version: "2.0"

ということで、次のようなものは括らなくても大丈夫。

# requirement.yml(ok-ver.)
- src: geerlingguy.composer
   version: 1.4.0

Ansible Galaxy — Ansible Documentation には書いてないけど、どっかに書いてあるのかな・・

get_term_childrenで子タームが取得できない

結論

次のブログに書いてあるキャッシュの削除で解消した。

haikikyou.hatenablog.com

ありがとうございます! 助かりました!

経緯

get_term_childrenでデータが取得できない。
中身を見てみると、_get_term_hierarchy で こんなんやってて、これが取れてない。

$children = get_option("{$taxonomy}_children");

options テーブル見てみると、確かに空っぽいデータになってる。

terms はコードでデータを入れ込んでるので、上記ブログのようにキャッシュが正しく削除されなかったのだろう・・

上記ブログに記載ある通り、適当な箇所で下記を実行することでデータが正しく生成され、get_term_childrenでもデータが取得できるようになった。

// clean_term_cache関数より引用
$taxonomy = 'category';
wp_cache_delete('all_ids', $taxonomy);
wp_cache_delete('get', $taxonomy);
delete_option("{$taxonomy}_children");
_get_term_hierarchy($taxonomy);

WPのリビジョンを一時的に無効化する

WordPress 4.4だとこれで一時的に無効化できた。

remove_action('post_updated', 'wp_save_post_revision');
$post_id = wp_update_post( $arg );
add_action( 'post_updated', 'wp_save_post_revision' );

ググったら次のようなコードがよく出てくるけど、4.4だと動かなかった。

remove_action('pre_post_update', 'wp_save_post_revision');
$post_id = wp_update_post( $arg );
add_action( 'post_updated', 'wp_save_post_revision' );